blob: e9d292866977bb97759c0d76bfaafc924019cb6d [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>Functions (Apache Calcite API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../../jquery/jquery-3.3.1.js"></script>
<script type="text/javascript" src="../../../../../jquery/jquery-migrate-3.0.1.js"></script>
<script type="text/javascript" src="../../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Functions (Apache Calcite API)";
}
}
catch(err) {
}
//-->
var data = {"i0":41,"i1":9,"i2":9,"i3":9,"i4":9,"i5":41,"i6":9,"i7":9,"i8":9,"i9":9,"i10":9,"i11":9,"i12":9,"i13":9,"i14":9,"i15":9,"i16":9,"i17":9,"i18":9,"i19":9,"i20":9,"i21":9,"i22":9,"i23":9,"i24":9,"i25":9,"i26":9,"i27":9,"i28":9,"i29":9,"i30":9,"i31":9,"i32":9};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/Functions.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.calcite.linq4j.function</a></div>
<h2 title="Class Functions" class="title">Class Functions</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.apache.calcite.linq4j.function.Functions</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<pre>public abstract class <span class="typeNameLabel">Functions</span>
extends java.lang.Object</pre>
<div class="block">Utilities relating to functions.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<table class="memberSummary">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="Functions.ArrayEqualityComparer.html" title="class in org.apache.calcite.linq4j.function">Functions.ArrayEqualityComparer</a></span></code></th>
<td class="colLast">
<div class="block">Array equality comparer.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="Functions.GeneratingList.html" title="class in org.apache.calcite.linq4j.function">Functions.GeneratingList</a>&lt;<a href="Functions.GeneratingList.html" title="type parameter in Functions.GeneratingList">E</a>&gt;</span></code></th>
<td class="colLast">
<div class="block">List that generates each element using a function.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="Functions.IdentityEqualityComparer.html" title="class in org.apache.calcite.linq4j.function">Functions.IdentityEqualityComparer</a></span></code></th>
<td class="colLast">
<div class="block">Identity equality comparer.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="Functions.Ignore.html" title="class in org.apache.calcite.linq4j.function">Functions.Ignore</a>&lt;<a href="Functions.Ignore.html" title="type parameter in Functions.Ignore">R</a>,&#8203;<a href="Functions.Ignore.html" title="type parameter in Functions.Ignore">T0</a>,&#8203;<a href="Functions.Ignore.html" title="type parameter in Functions.Ignore">T1</a>&gt;</span></code></th>
<td class="colLast">
<div class="block">Ignore.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="Functions.NullsFirstComparator.html" title="class in org.apache.calcite.linq4j.function">Functions.NullsFirstComparator</a></span></code></th>
<td class="colLast">
<div class="block">Nulls first comparator.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="Functions.NullsFirstReverseComparator.html" title="class in org.apache.calcite.linq4j.function">Functions.NullsFirstReverseComparator</a></span></code></th>
<td class="colLast">
<div class="block">Nulls first reverse comparator.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="Functions.NullsLastComparator.html" title="class in org.apache.calcite.linq4j.function">Functions.NullsLastComparator</a></span></code></th>
<td class="colLast">
<div class="block">Nulls last comparator.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="Functions.NullsLastReverseComparator.html" title="class in org.apache.calcite.linq4j.function">Functions.NullsLastReverseComparator</a></span></code></th>
<td class="colLast">
<div class="block">Nulls last reverse comparator.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="Functions.SelectorEqualityComparer.html" title="class in org.apache.calcite.linq4j.function">Functions.SelectorEqualityComparer</a>&lt;<a href="Functions.SelectorEqualityComparer.html" title="type parameter in Functions.SelectorEqualityComparer">T</a>,&#8203;<a href="Functions.SelectorEqualityComparer.html" title="type parameter in Functions.SelectorEqualityComparer">T2</a>&gt;</span></code></th>
<td class="colLast">
<div class="block">Selector equality comparer.</div>
</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- =========== FIELD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static <a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function">EqualityComparer</a>&lt;java.lang.Object[]&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#ARRAY_COMPARER">ARRAY_COMPARER</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static <a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#CONSTANT_NULL_FUNCTION1">CONSTANT_NULL_FUNCTION1</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.util.Map&lt;java.lang.Class&lt;? extends <a href="Function.html" title="interface in org.apache.calcite.linq4j.function">Function</a>&gt;,&#8203;java.lang.Class&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#FUNCTION_RESULT_TYPES">FUNCTION_RESULT_TYPES</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static java.util.Map&lt;java.lang.Class,&#8203;java.lang.Class&lt;? extends <a href="Function.html" title="interface in org.apache.calcite.linq4j.function">Function</a>&gt;&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#FUNCTION1_CLASSES">FUNCTION1_CLASSES</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static <a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function">EqualityComparer</a>&lt;java.lang.Object&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#IDENTITY_COMPARER">IDENTITY_COMPARER</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static java.util.Comparator</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#NULLS_FIRST_COMPARATOR">NULLS_FIRST_COMPARATOR</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static java.util.Comparator</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#NULLS_FIRST_REVERSE_COMPARATOR">NULLS_FIRST_REVERSE_COMPARATOR</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static java.util.Comparator</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#NULLS_LAST_COMPARATOR">NULLS_LAST_COMPARATOR</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static java.util.Comparator</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#NULLS_LAST_REVERSE_COMPARATOR">NULLS_LAST_REVERSE_COMPARATOR</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private static <a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#TO_STRING_FUNCTION1">TO_STRING_FUNCTION1</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier</th>
<th class="colSecond" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private </code></td>
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">Functions</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>static &lt;T1,&#8203;R&gt;<br>java.util.List&lt;R&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#adapt(java.util.List,org.apache.calcite.linq4j.function.Function1)">adapt</a></span>&#8203;(java.util.List&lt;T1&gt;&nbsp;list,
<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,&#8203;R&gt;&nbsp;f)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <code>Lists.transform(java.util.List&lt;F&gt;, com.google.common.base.Function&lt;? super F, ? extends T&gt;)</code></div>
</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>static &lt;T1&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,&#8203;java.lang.Double&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#adapt(org.apache.calcite.linq4j.function.DoubleFunction1)">adapt</a></span>&#8203;(<a href="DoubleFunction1.html" title="interface in org.apache.calcite.linq4j.function">DoubleFunction1</a>&lt;T1&gt;&nbsp;f)</code></th>
<td class="colLast">
<div class="block">Adapts a <a href="DoubleFunction1.html" title="interface in org.apache.calcite.linq4j.function"><code>DoubleFunction1</code></a> (that returns a <code>double</code>) to
an <a href="Function1.html" title="interface in org.apache.calcite.linq4j.function"><code>Function1</code></a> returning a <code>Double</code>.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>static &lt;T1&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,&#8203;java.lang.Float&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#adapt(org.apache.calcite.linq4j.function.FloatFunction1)">adapt</a></span>&#8203;(<a href="FloatFunction1.html" title="interface in org.apache.calcite.linq4j.function">FloatFunction1</a>&lt;T1&gt;&nbsp;f)</code></th>
<td class="colLast">
<div class="block">Adapts a <a href="FloatFunction1.html" title="interface in org.apache.calcite.linq4j.function"><code>FloatFunction1</code></a> (that returns a <code>float</code>) to
an <a href="Function1.html" title="interface in org.apache.calcite.linq4j.function"><code>Function1</code></a> returning a <code>Float</code>.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>static &lt;T1&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,&#8203;java.lang.Integer&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#adapt(org.apache.calcite.linq4j.function.IntegerFunction1)">adapt</a></span>&#8203;(<a href="IntegerFunction1.html" title="interface in org.apache.calcite.linq4j.function">IntegerFunction1</a>&lt;T1&gt;&nbsp;f)</code></th>
<td class="colLast">
<div class="block">Adapts an <a href="IntegerFunction1.html" title="interface in org.apache.calcite.linq4j.function"><code>IntegerFunction1</code></a> (that returns an <code>int</code>) to
an <a href="Function1.html" title="interface in org.apache.calcite.linq4j.function"><code>Function1</code></a> returning an <code>Integer</code>.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>static &lt;T1&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,&#8203;java.lang.Long&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#adapt(org.apache.calcite.linq4j.function.LongFunction1)">adapt</a></span>&#8203;(<a href="LongFunction1.html" title="interface in org.apache.calcite.linq4j.function">LongFunction1</a>&lt;T1&gt;&nbsp;f)</code></th>
<td class="colLast">
<div class="block">Adapts a <a href="LongFunction1.html" title="interface in org.apache.calcite.linq4j.function"><code>LongFunction1</code></a> (that returns a <code>long</code>) to
an <a href="Function1.html" title="interface in org.apache.calcite.linq4j.function"><code>Function1</code></a> returning a <code>Long</code>.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>static &lt;T,&#8203;R&gt;<br>java.util.List&lt;R&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#adapt(T%5B%5D,org.apache.calcite.linq4j.function.Function1)">adapt</a></span>&#8203;(T[]&nbsp;ts,
<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T,&#8203;R&gt;&nbsp;f)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <code>Lists.transform(java.util.List&lt;F&gt;, com.google.common.base.Function&lt;? super F, ? extends T&gt;)</code>
and <code>Arrays.asList(Object[])</code></div>
</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>static &lt;E&gt;&nbsp;boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#all(java.util.List,org.apache.calcite.linq4j.function.Predicate1)">all</a></span>&#8203;(java.util.List&lt;? extends E&gt;&nbsp;list,
<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;E&gt;&nbsp;predicate)</code></th>
<td class="colLast">
<div class="block">Returns whether <code>predicate</code> is true for all elements of
<code>list</code>.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>static &lt;T1,&#8203;R&gt;<br>java.util.List&lt;R&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#apply(java.util.List,org.apache.calcite.linq4j.function.Function1)">apply</a></span>&#8203;(java.util.List&lt;T1&gt;&nbsp;list,
<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,&#8203;R&gt;&nbsp;f)</code></th>
<td class="colLast">
<div class="block">Creates a copy of a list, applying a function to each element.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function">EqualityComparer</a>&lt;T[]&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#arrayComparer()">arrayComparer</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns an <a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function"><code>EqualityComparer</code></a> that works on arrays of objects.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>static &lt;T,&#8203;R&gt;<br><a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T,&#8203;R&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#constant(R)">constant</a></span>&#8203;(R&nbsp;r)</code></th>
<td class="colLast">
<div class="block">Returns a 1-parameter function that always returns the same value.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>static &lt;T,&#8203;R&gt;<br><a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T,&#8203;R&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#constantNull()">constantNull</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns a 1-parameter function that always returns null.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>static &lt;E&gt;&nbsp;boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#exists(java.util.List,org.apache.calcite.linq4j.function.Predicate1)">exists</a></span>&#8203;(java.util.List&lt;? extends E&gt;&nbsp;list,
<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;E&gt;&nbsp;predicate)</code></th>
<td class="colLast">
<div class="block">Returns whether there is an element in <code>list</code> for which
<code>predicate</code> is true.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#falsePredicate1()">falsePredicate1</a></span>()</code></th>
<td class="colLast">
<div class="block">A predicate with one parameter that always returns <code>true</code>.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>static &lt;T1,&#8203;T2&gt;<br><a href="Predicate2.html" title="interface in org.apache.calcite.linq4j.function">Predicate2</a>&lt;T1,&#8203;T2&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#falsePredicate2()">falsePredicate2</a></span>()</code></th>
<td class="colLast">
<div class="block">A predicate with two parameters that always returns <code>false</code>.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>static &lt;E&gt;&nbsp;java.util.List&lt;E&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#filter(java.util.List,org.apache.calcite.linq4j.function.Predicate1)">filter</a></span>&#8203;(java.util.List&lt;E&gt;&nbsp;list,
<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;E&gt;&nbsp;predicate)</code></th>
<td class="colLast">
<div class="block">Returns a list that contains only elements of <code>list</code> that match
<code>predicate</code>.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>static java.lang.Class&lt;? extends <a href="Function.html" title="interface in org.apache.calcite.linq4j.function">Function</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#functionClass(java.lang.reflect.Type)">functionClass</a></span>&#8203;(java.lang.reflect.Type&nbsp;aClass)</code></th>
<td class="colLast">
<div class="block">Returns the appropriate interface for a lambda function with
1 argument and the given return type.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>static &lt;E&gt;&nbsp;java.util.List&lt;E&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#generate(int,org.apache.calcite.linq4j.function.Function1)">generate</a></span>&#8203;(int&nbsp;size,
<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;java.lang.Integer,&#8203;E&gt;&nbsp;fn)</code></th>
<td class="colLast">
<div class="block">Returns a list generated by applying a function to each index between
0 and <code>size</code> - 1.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function">EqualityComparer</a>&lt;T&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#identityComparer()">identityComparer</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns an <a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function"><code>EqualityComparer</code></a> that uses object identity and hash
code.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>static &lt;TSource&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;TSource,&#8203;TSource&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#identitySelector()">identitySelector</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>static &lt;R&gt;&nbsp;<a href="Function0.html" title="interface in org.apache.calcite.linq4j.function">Function0</a>&lt;R&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#ignore0()">ignore0</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns a function of arity 0 that does nothing.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>static &lt;R,&#8203;T0&gt;<br><a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;R,&#8203;T0&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#ignore1()">ignore1</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns a function of arity 1 that does nothing.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>static &lt;R,&#8203;T0,&#8203;T1&gt;<br><a href="Function2.html" title="interface in org.apache.calcite.linq4j.function">Function2</a>&lt;R,&#8203;T0,&#8203;T1&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#ignore2()">ignore2</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns a function of arity 2 that does nothing.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>private static &lt;K,&#8203;V&gt;<br>java.util.Map&lt;V,&#8203;K&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#inverse(java.util.Map)">inverse</a></span>&#8203;(java.util.Map&lt;K,&#8203;V&gt;&nbsp;map)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>private static &lt;K,&#8203;V&gt;<br>java.util.Map&lt;K,&#8203;V&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#map(K,V,java.lang.Object...)">map</a></span>&#8203;(K&nbsp;k,
V&nbsp;v,
java.lang.Object...&nbsp;rest)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>static &lt;T extends java.lang.Comparable&lt;T&gt;&gt;<br>java.util.Comparator&lt;T&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#nullsComparator(boolean,boolean)">nullsComparator</a></span>&#8203;(boolean&nbsp;nullsFirst,
boolean&nbsp;reverse)</code></th>
<td class="colLast">
<div class="block">Returns a <code>Comparator</code> that handles null values.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>static &lt;T,&#8203;T2&gt;<br><a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#ofTypePredicate(java.lang.Class)">ofTypePredicate</a></span>&#8203;(java.lang.Class&lt;T2&gt;&nbsp;clazz)</code></th>
<td class="colLast">
<div class="block">Creates a predicate that returns whether an object is an instance of a
particular type or is null.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>static &lt;T,&#8203;T2&gt;<br><a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function">EqualityComparer</a>&lt;T&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#selectorComparer(org.apache.calcite.linq4j.function.Function1)">selectorComparer</a></span>&#8203;(<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T,&#8203;T2&gt;&nbsp;selector)</code></th>
<td class="colLast">
<div class="block">Returns an <a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function"><code>EqualityComparer</code></a> that uses a selector function.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>private static &lt;T&gt;&nbsp;<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toPredicate(org.apache.calcite.linq4j.function.Function1)">toPredicate</a></span>&#8203;(<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T,&#8203;java.lang.Boolean&gt;&nbsp;function)</code></th>
<td class="colLast">
<div class="block">Converts a 1-parameter function to a predicate.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>static &lt;T1,&#8203;T2&gt;<br><a href="Predicate2.html" title="interface in org.apache.calcite.linq4j.function">Predicate2</a>&lt;T1,&#8203;T2&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toPredicate(org.apache.calcite.linq4j.function.Function2)">toPredicate</a></span>&#8203;(<a href="Function2.html" title="interface in org.apache.calcite.linq4j.function">Function2</a>&lt;T1,&#8203;T2,&#8203;java.lang.Boolean&gt;&nbsp;function)</code></th>
<td class="colLast">
<div class="block">Converts a 2-parameter function to a predicate.</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>static &lt;T1,&#8203;T2&gt;<br><a href="Predicate2.html" title="interface in org.apache.calcite.linq4j.function">Predicate2</a>&lt;T1,&#8203;T2&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toPredicate2(org.apache.calcite.linq4j.function.Predicate1)">toPredicate2</a></span>&#8203;(<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T1&gt;&nbsp;p1)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>static &lt;TSource&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;TSource,&#8203;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toStringSelector()">toStringSelector</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns a selector that calls the <code>Object.toString()</code> method on
each element.</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#truePredicate1()">truePredicate1</a></span>()</code></th>
<td class="colLast">
<div class="block">A predicate with one parameter that always returns <code>true</code>.</div>
</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>static &lt;T1,&#8203;T2&gt;<br><a href="Predicate2.html" title="interface in org.apache.calcite.linq4j.function">Predicate2</a>&lt;T1,&#8203;T2&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#truePredicate2()">truePredicate2</a></span>()</code></th>
<td class="colLast">
<div class="block">A predicate with two parameters that always returns <code>true</code>.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a id="FUNCTION_RESULT_TYPES">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>FUNCTION_RESULT_TYPES</h4>
<pre>public static final&nbsp;java.util.Map&lt;java.lang.Class&lt;? extends <a href="Function.html" title="interface in org.apache.calcite.linq4j.function">Function</a>&gt;,&#8203;java.lang.Class&gt; FUNCTION_RESULT_TYPES</pre>
</li>
</ul>
<a id="FUNCTION1_CLASSES">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>FUNCTION1_CLASSES</h4>
<pre>private static final&nbsp;java.util.Map&lt;java.lang.Class,&#8203;java.lang.Class&lt;? extends <a href="Function.html" title="interface in org.apache.calcite.linq4j.function">Function</a>&gt;&gt; FUNCTION1_CLASSES</pre>
</li>
</ul>
<a id="NULLS_FIRST_COMPARATOR">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NULLS_FIRST_COMPARATOR</h4>
<pre>private static final&nbsp;java.util.Comparator NULLS_FIRST_COMPARATOR</pre>
</li>
</ul>
<a id="NULLS_LAST_COMPARATOR">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NULLS_LAST_COMPARATOR</h4>
<pre>private static final&nbsp;java.util.Comparator NULLS_LAST_COMPARATOR</pre>
</li>
</ul>
<a id="NULLS_LAST_REVERSE_COMPARATOR">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NULLS_LAST_REVERSE_COMPARATOR</h4>
<pre>private static final&nbsp;java.util.Comparator NULLS_LAST_REVERSE_COMPARATOR</pre>
</li>
</ul>
<a id="NULLS_FIRST_REVERSE_COMPARATOR">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NULLS_FIRST_REVERSE_COMPARATOR</h4>
<pre>private static final&nbsp;java.util.Comparator NULLS_FIRST_REVERSE_COMPARATOR</pre>
</li>
</ul>
<a id="IDENTITY_COMPARER">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>IDENTITY_COMPARER</h4>
<pre>private static final&nbsp;<a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function">EqualityComparer</a>&lt;java.lang.Object&gt; IDENTITY_COMPARER</pre>
</li>
</ul>
<a id="ARRAY_COMPARER">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ARRAY_COMPARER</h4>
<pre>private static final&nbsp;<a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function">EqualityComparer</a>&lt;java.lang.Object[]&gt; ARRAY_COMPARER</pre>
</li>
</ul>
<a id="CONSTANT_NULL_FUNCTION1">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>CONSTANT_NULL_FUNCTION1</h4>
<pre>private static final&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a> CONSTANT_NULL_FUNCTION1</pre>
</li>
</ul>
<a id="TO_STRING_FUNCTION1">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>TO_STRING_FUNCTION1</h4>
<pre>private static final&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a> TO_STRING_FUNCTION1</pre>
</li>
</ul>
</li>
</ul>
</section>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>Functions</h4>
<pre>private&nbsp;Functions()</pre>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a id="map(java.lang.Object,java.lang.Object,java.lang.Object[])">
<!-- -->
</a><a id="map(K,V,java.lang.Object...)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>map</h4>
<pre class="methodSignature">private static&nbsp;&lt;K,&#8203;V&gt;&nbsp;java.util.Map&lt;K,&#8203;V&gt;&nbsp;map&#8203;(K&nbsp;k,
V&nbsp;v,
java.lang.Object...&nbsp;rest)</pre>
</li>
</ul>
<a id="inverse(java.util.Map)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>inverse</h4>
<pre class="methodSignature">private static&nbsp;&lt;K,&#8203;V&gt;&nbsp;java.util.Map&lt;V,&#8203;K&gt;&nbsp;inverse&#8203;(java.util.Map&lt;K,&#8203;V&gt;&nbsp;map)</pre>
</li>
</ul>
<a id="constant(java.lang.Object)">
<!-- -->
</a><a id="constant(R)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>constant</h4>
<pre class="methodSignature">public static&nbsp;&lt;T,&#8203;R&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T,&#8203;R&gt;&nbsp;constant&#8203;(R&nbsp;r)</pre>
<div class="block">Returns a 1-parameter function that always returns the same value.</div>
</li>
</ul>
<a id="constantNull()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>constantNull</h4>
<pre class="methodSignature">public static&nbsp;&lt;T,&#8203;R&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T,&#8203;R&gt;&nbsp;constantNull()</pre>
<div class="block">Returns a 1-parameter function that always returns null.</div>
</li>
</ul>
<a id="truePredicate1()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>truePredicate1</h4>
<pre class="methodSignature">public static&nbsp;&lt;T&gt;&nbsp;<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T&gt;&nbsp;truePredicate1()</pre>
<div class="block">A predicate with one parameter that always returns <code>true</code>.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - First parameter type</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Predicate that always returns true</dd>
</dl>
</li>
</ul>
<a id="falsePredicate1()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>falsePredicate1</h4>
<pre class="methodSignature">public static&nbsp;&lt;T&gt;&nbsp;<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T&gt;&nbsp;falsePredicate1()</pre>
<div class="block">A predicate with one parameter that always returns <code>true</code>.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - First parameter type</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Predicate that always returns true</dd>
</dl>
</li>
</ul>
<a id="truePredicate2()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>truePredicate2</h4>
<pre class="methodSignature">public static&nbsp;&lt;T1,&#8203;T2&gt;&nbsp;<a href="Predicate2.html" title="interface in org.apache.calcite.linq4j.function">Predicate2</a>&lt;T1,&#8203;T2&gt;&nbsp;truePredicate2()</pre>
<div class="block">A predicate with two parameters that always returns <code>true</code>.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T1</code> - First parameter type</dd>
<dd><code>T2</code> - Second parameter type</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Predicate that always returns true</dd>
</dl>
</li>
</ul>
<a id="falsePredicate2()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>falsePredicate2</h4>
<pre class="methodSignature">public static&nbsp;&lt;T1,&#8203;T2&gt;&nbsp;<a href="Predicate2.html" title="interface in org.apache.calcite.linq4j.function">Predicate2</a>&lt;T1,&#8203;T2&gt;&nbsp;falsePredicate2()</pre>
<div class="block">A predicate with two parameters that always returns <code>false</code>.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T1</code> - First parameter type</dd>
<dd><code>T2</code> - Second parameter type</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Predicate that always returns false</dd>
</dl>
</li>
</ul>
<a id="identitySelector()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>identitySelector</h4>
<pre class="methodSignature">public static&nbsp;&lt;TSource&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;TSource,&#8203;TSource&gt;&nbsp;identitySelector()</pre>
</li>
</ul>
<a id="toStringSelector()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toStringSelector</h4>
<pre class="methodSignature">public static&nbsp;&lt;TSource&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;TSource,&#8203;java.lang.String&gt;&nbsp;toStringSelector()</pre>
<div class="block">Returns a selector that calls the <code>Object.toString()</code> method on
each element.</div>
</li>
</ul>
<a id="ofTypePredicate(java.lang.Class)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ofTypePredicate</h4>
<pre class="methodSignature">public static&nbsp;&lt;T,&#8203;T2&gt;&nbsp;<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T&gt;&nbsp;ofTypePredicate&#8203;(java.lang.Class&lt;T2&gt;&nbsp;clazz)</pre>
<div class="block">Creates a predicate that returns whether an object is an instance of a
particular type or is null.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - Type of objects to test</dd>
<dd><code>T2</code> - Desired type</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>clazz</code> - Desired type</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Predicate that tests for desired type</dd>
</dl>
</li>
</ul>
<a id="toPredicate2(org.apache.calcite.linq4j.function.Predicate1)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toPredicate2</h4>
<pre class="methodSignature">public static&nbsp;&lt;T1,&#8203;T2&gt;&nbsp;<a href="Predicate2.html" title="interface in org.apache.calcite.linq4j.function">Predicate2</a>&lt;T1,&#8203;T2&gt;&nbsp;toPredicate2&#8203;(<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T1&gt;&nbsp;p1)</pre>
</li>
</ul>
<a id="toPredicate(org.apache.calcite.linq4j.function.Function2)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toPredicate</h4>
<pre class="methodSignature">public static&nbsp;&lt;T1,&#8203;T2&gt;&nbsp;<a href="Predicate2.html" title="interface in org.apache.calcite.linq4j.function">Predicate2</a>&lt;T1,&#8203;T2&gt;&nbsp;toPredicate&#8203;(<a href="Function2.html" title="interface in org.apache.calcite.linq4j.function">Function2</a>&lt;T1,&#8203;T2,&#8203;java.lang.Boolean&gt;&nbsp;function)</pre>
<div class="block">Converts a 2-parameter function to a predicate.</div>
</li>
</ul>
<a id="toPredicate(org.apache.calcite.linq4j.function.Function1)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toPredicate</h4>
<pre class="methodSignature">private static&nbsp;&lt;T&gt;&nbsp;<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T&gt;&nbsp;toPredicate&#8203;(<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T,&#8203;java.lang.Boolean&gt;&nbsp;function)</pre>
<div class="block">Converts a 1-parameter function to a predicate.</div>
</li>
</ul>
<a id="functionClass(java.lang.reflect.Type)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>functionClass</h4>
<pre class="methodSignature">public static&nbsp;java.lang.Class&lt;? extends <a href="Function.html" title="interface in org.apache.calcite.linq4j.function">Function</a>&gt;&nbsp;functionClass&#8203;(java.lang.reflect.Type&nbsp;aClass)</pre>
<div class="block">Returns the appropriate interface for a lambda function with
1 argument and the given return type.
<p>For example:</p>
functionClass(Integer.TYPE) returns IntegerFunction1.class
functionClass(String.class) returns Function1.class</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>aClass</code> - Return type</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Function class</dd>
</dl>
</li>
</ul>
<a id="adapt(org.apache.calcite.linq4j.function.IntegerFunction1)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>adapt</h4>
<pre class="methodSignature">public static&nbsp;&lt;T1&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,&#8203;java.lang.Integer&gt;&nbsp;adapt&#8203;(<a href="IntegerFunction1.html" title="interface in org.apache.calcite.linq4j.function">IntegerFunction1</a>&lt;T1&gt;&nbsp;f)</pre>
<div class="block">Adapts an <a href="IntegerFunction1.html" title="interface in org.apache.calcite.linq4j.function"><code>IntegerFunction1</code></a> (that returns an <code>int</code>) to
an <a href="Function1.html" title="interface in org.apache.calcite.linq4j.function"><code>Function1</code></a> returning an <code>Integer</code>.</div>
</li>
</ul>
<a id="adapt(org.apache.calcite.linq4j.function.DoubleFunction1)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>adapt</h4>
<pre class="methodSignature">public static&nbsp;&lt;T1&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,&#8203;java.lang.Double&gt;&nbsp;adapt&#8203;(<a href="DoubleFunction1.html" title="interface in org.apache.calcite.linq4j.function">DoubleFunction1</a>&lt;T1&gt;&nbsp;f)</pre>
<div class="block">Adapts a <a href="DoubleFunction1.html" title="interface in org.apache.calcite.linq4j.function"><code>DoubleFunction1</code></a> (that returns a <code>double</code>) to
an <a href="Function1.html" title="interface in org.apache.calcite.linq4j.function"><code>Function1</code></a> returning a <code>Double</code>.</div>
</li>
</ul>
<a id="adapt(org.apache.calcite.linq4j.function.LongFunction1)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>adapt</h4>
<pre class="methodSignature">public static&nbsp;&lt;T1&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,&#8203;java.lang.Long&gt;&nbsp;adapt&#8203;(<a href="LongFunction1.html" title="interface in org.apache.calcite.linq4j.function">LongFunction1</a>&lt;T1&gt;&nbsp;f)</pre>
<div class="block">Adapts a <a href="LongFunction1.html" title="interface in org.apache.calcite.linq4j.function"><code>LongFunction1</code></a> (that returns a <code>long</code>) to
an <a href="Function1.html" title="interface in org.apache.calcite.linq4j.function"><code>Function1</code></a> returning a <code>Long</code>.</div>
</li>
</ul>
<a id="adapt(org.apache.calcite.linq4j.function.FloatFunction1)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>adapt</h4>
<pre class="methodSignature">public static&nbsp;&lt;T1&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,&#8203;java.lang.Float&gt;&nbsp;adapt&#8203;(<a href="FloatFunction1.html" title="interface in org.apache.calcite.linq4j.function">FloatFunction1</a>&lt;T1&gt;&nbsp;f)</pre>
<div class="block">Adapts a <a href="FloatFunction1.html" title="interface in org.apache.calcite.linq4j.function"><code>FloatFunction1</code></a> (that returns a <code>float</code>) to
an <a href="Function1.html" title="interface in org.apache.calcite.linq4j.function"><code>Function1</code></a> returning a <code>Float</code>.</div>
</li>
</ul>
<a id="adapt(java.util.List,org.apache.calcite.linq4j.function.Function1)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>adapt</h4>
<pre class="methodSignature">@Deprecated
public static&nbsp;&lt;T1,&#8203;R&gt;&nbsp;java.util.List&lt;R&gt;&nbsp;adapt&#8203;(java.util.List&lt;T1&gt;&nbsp;list,
<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,&#8203;R&gt;&nbsp;f)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <code>Lists.transform(java.util.List&lt;F&gt;, com.google.common.base.Function&lt;? super F, ? extends T&gt;)</code></div>
</div>
<div class="block">Creates a view of a list that applies a function to each element.</div>
</li>
</ul>
<a id="adapt(java.lang.Object[],org.apache.calcite.linq4j.function.Function1)">
<!-- -->
</a><a id="adapt(T[],org.apache.calcite.linq4j.function.Function1)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>adapt</h4>
<pre class="methodSignature">@Deprecated
public static&nbsp;&lt;T,&#8203;R&gt;&nbsp;java.util.List&lt;R&gt;&nbsp;adapt&#8203;(T[]&nbsp;ts,
<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T,&#8203;R&gt;&nbsp;f)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <code>Lists.transform(java.util.List&lt;F&gt;, com.google.common.base.Function&lt;? super F, ? extends T&gt;)</code>
and <code>Arrays.asList(Object[])</code></div>
</div>
<div class="block">Creates a view of an array that applies a function to each element.</div>
</li>
</ul>
<a id="apply(java.util.List,org.apache.calcite.linq4j.function.Function1)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>apply</h4>
<pre class="methodSignature">public static&nbsp;&lt;T1,&#8203;R&gt;&nbsp;java.util.List&lt;R&gt;&nbsp;apply&#8203;(java.util.List&lt;T1&gt;&nbsp;list,
<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,&#8203;R&gt;&nbsp;f)</pre>
<div class="block">Creates a copy of a list, applying a function to each element.</div>
</li>
</ul>
<a id="filter(java.util.List,org.apache.calcite.linq4j.function.Predicate1)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>filter</h4>
<pre class="methodSignature">public static&nbsp;&lt;E&gt;&nbsp;java.util.List&lt;E&gt;&nbsp;filter&#8203;(java.util.List&lt;E&gt;&nbsp;list,
<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;E&gt;&nbsp;predicate)</pre>
<div class="block">Returns a list that contains only elements of <code>list</code> that match
<code>predicate</code>. Avoids allocating a list if all elements match or no
elements match.</div>
</li>
</ul>
<a id="exists(java.util.List,org.apache.calcite.linq4j.function.Predicate1)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>exists</h4>
<pre class="methodSignature">public static&nbsp;&lt;E&gt;&nbsp;boolean&nbsp;exists&#8203;(java.util.List&lt;? extends E&gt;&nbsp;list,
<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;E&gt;&nbsp;predicate)</pre>
<div class="block">Returns whether there is an element in <code>list</code> for which
<code>predicate</code> is true.</div>
</li>
</ul>
<a id="all(java.util.List,org.apache.calcite.linq4j.function.Predicate1)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>all</h4>
<pre class="methodSignature">public static&nbsp;&lt;E&gt;&nbsp;boolean&nbsp;all&#8203;(java.util.List&lt;? extends E&gt;&nbsp;list,
<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;E&gt;&nbsp;predicate)</pre>
<div class="block">Returns whether <code>predicate</code> is true for all elements of
<code>list</code>.</div>
</li>
</ul>
<a id="generate(int,org.apache.calcite.linq4j.function.Function1)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>generate</h4>
<pre class="methodSignature">public static&nbsp;&lt;E&gt;&nbsp;java.util.List&lt;E&gt;&nbsp;generate&#8203;(int&nbsp;size,
<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;java.lang.Integer,&#8203;E&gt;&nbsp;fn)</pre>
<div class="block">Returns a list generated by applying a function to each index between
0 and <code>size</code> - 1.</div>
</li>
</ul>
<a id="ignore0()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ignore0</h4>
<pre class="methodSignature">public static&nbsp;&lt;R&gt;&nbsp;<a href="Function0.html" title="interface in org.apache.calcite.linq4j.function">Function0</a>&lt;R&gt;&nbsp;ignore0()</pre>
<div class="block">Returns a function of arity 0 that does nothing.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>R</code> - Return type</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Function that does nothing.</dd>
</dl>
</li>
</ul>
<a id="ignore1()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ignore1</h4>
<pre class="methodSignature">public static&nbsp;&lt;R,&#8203;T0&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;R,&#8203;T0&gt;&nbsp;ignore1()</pre>
<div class="block">Returns a function of arity 1 that does nothing.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>R</code> - Return type</dd>
<dd><code>T0</code> - Type of parameter 0</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Function that does nothing.</dd>
</dl>
</li>
</ul>
<a id="ignore2()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ignore2</h4>
<pre class="methodSignature">public static&nbsp;&lt;R,&#8203;T0,&#8203;T1&gt;&nbsp;<a href="Function2.html" title="interface in org.apache.calcite.linq4j.function">Function2</a>&lt;R,&#8203;T0,&#8203;T1&gt;&nbsp;ignore2()</pre>
<div class="block">Returns a function of arity 2 that does nothing.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>R</code> - Return type</dd>
<dd><code>T0</code> - Type of parameter 0</dd>
<dd><code>T1</code> - Type of parameter 1</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Function that does nothing.</dd>
</dl>
</li>
</ul>
<a id="nullsComparator(boolean,boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nullsComparator</h4>
<pre class="methodSignature">public static&nbsp;&lt;T extends java.lang.Comparable&lt;T&gt;&gt;&nbsp;java.util.Comparator&lt;T&gt;&nbsp;nullsComparator&#8203;(boolean&nbsp;nullsFirst,
boolean&nbsp;reverse)</pre>
<div class="block">Returns a <code>Comparator</code> that handles null values.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>nullsFirst</code> - Whether nulls come before all other values</dd>
<dd><code>reverse</code> - Whether to reverse the usual order of <code>Comparable</code>s</dd>
</dl>
</li>
</ul>
<a id="identityComparer()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>identityComparer</h4>
<pre class="methodSignature">public static&nbsp;&lt;T&gt;&nbsp;<a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function">EqualityComparer</a>&lt;T&gt;&nbsp;identityComparer()</pre>
<div class="block">Returns an <a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function"><code>EqualityComparer</code></a> that uses object identity and hash
code.</div>
</li>
</ul>
<a id="arrayComparer()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>arrayComparer</h4>
<pre class="methodSignature">public static&nbsp;&lt;T&gt;&nbsp;<a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function">EqualityComparer</a>&lt;T[]&gt;&nbsp;arrayComparer()</pre>
<div class="block">Returns an <a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function"><code>EqualityComparer</code></a> that works on arrays of objects.</div>
</li>
</ul>
<a id="selectorComparer(org.apache.calcite.linq4j.function.Function1)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>selectorComparer</h4>
<pre class="methodSignature">public static&nbsp;&lt;T,&#8203;T2&gt;&nbsp;<a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function">EqualityComparer</a>&lt;T&gt;&nbsp;selectorComparer&#8203;(<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T,&#8203;T2&gt;&nbsp;selector)</pre>
<div class="block">Returns an <a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function"><code>EqualityComparer</code></a> that uses a selector function.</div>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/Functions.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 2012&#x2013;2019 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</body>
</html>