blob: 8835222dfe4ab9240fa83322692352a82932d6eb [file] [log] [blame]
<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) -->
<title>Functions (Apache Calcite API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="description" content="declaration: package: org.apache.calcite.linq4j.function, class: Functions">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top">
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<div class="about-language"><b>Apache Calcite</b></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html#class">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field-summary">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li><a href="#field-detail">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><label for="search-input">SEARCH:</label>
<input type="text" id="search-input" value="search" disabled="disabled">
<input type="reset" id="reset-button" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">org.apache.calcite.linq4j.function</a></div>
<h1 title="Class Functions" class="title">Class Functions</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">org.apache.calcite.linq4j.function.Functions</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public abstract class </span><span class="element-name type-name-label">Functions</span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span></div>
<div class="block">Utilities relating to functions.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- =========== FIELD SUMMARY =========== -->
<li>
<section class="field-summary" id="field-summary">
<h2>Field Summary</h2>
<div class="caption"><span>Fields</span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Field</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code>static final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a>&lt;<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a>&lt;? extends <a href="Function.html" title="interface in org.apache.calcite.linq4j.function">Function</a>&gt;,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a>&gt;</code></div>
<div class="col-second even-row-color"><code><a href="#FUNCTION_RESULT_TYPES" class="member-name-link">FUNCTION_RESULT_TYPES</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab1', 3)" class="table-tab">Static Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button><button id="method-summary-table-tab6" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab6', 3)" class="table-tab">Deprecated Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4 method-summary-table-tab6"><code>static &lt;T1,<wbr>
R&gt;&nbsp;<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;R&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4 method-summary-table-tab6"><code><a href="#adapt(java.util.List,org.apache.calcite.linq4j.function.Function1)" class="member-name-link">adapt</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;T1&gt;&nbsp;list,
<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,<wbr>R&gt;&nbsp;f)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4 method-summary-table-tab6">
<div class="block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">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>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;T1&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Double.html" title="class or interface in java.lang" class="external-link">Double</a>&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#adapt(org.apache.calcite.linq4j.function.DoubleFunction1)" class="member-name-link">adapt</a><wbr>(<a href="DoubleFunction1.html" title="interface in org.apache.calcite.linq4j.function">DoubleFunction1</a>&lt;T1&gt;&nbsp;f)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<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 <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Double.html" title="class or interface in java.lang" class="external-link"><code>Double</code></a>.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;T1&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Float.html" title="class or interface in java.lang" class="external-link">Float</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#adapt(org.apache.calcite.linq4j.function.FloatFunction1)" class="member-name-link">adapt</a><wbr>(<a href="FloatFunction1.html" title="interface in org.apache.calcite.linq4j.function">FloatFunction1</a>&lt;T1&gt;&nbsp;f)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<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 <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Float.html" title="class or interface in java.lang" class="external-link"><code>Float</code></a>.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;T1&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Integer.html" title="class or interface in java.lang" class="external-link">Integer</a>&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#adapt(org.apache.calcite.linq4j.function.IntegerFunction1)" class="member-name-link">adapt</a><wbr>(<a href="IntegerFunction1.html" title="interface in org.apache.calcite.linq4j.function">IntegerFunction1</a>&lt;T1&gt;&nbsp;f)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<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 <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Integer.html" title="class or interface in java.lang" class="external-link"><code>Integer</code></a>.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;T1&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Long.html" title="class or interface in java.lang" class="external-link">Long</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#adapt(org.apache.calcite.linq4j.function.LongFunction1)" class="member-name-link">adapt</a><wbr>(<a href="LongFunction1.html" title="interface in org.apache.calcite.linq4j.function">LongFunction1</a>&lt;T1&gt;&nbsp;f)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<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 <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Long.html" title="class or interface in java.lang" class="external-link"><code>Long</code></a>.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4 method-summary-table-tab6"><code>static &lt;T,<wbr>
R&gt;&nbsp;<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;R&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4 method-summary-table-tab6"><code><a href="#adapt(T%5B%5D,org.apache.calcite.linq4j.function.Function1)" class="member-name-link">adapt</a><wbr>(T[]&nbsp;ts,
<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T,<wbr>R&gt;&nbsp;f)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4 method-summary-table-tab6">
<div class="block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">Use <code>Lists.transform(java.util.List&lt;F&gt;, com.google.common.base.Function&lt;? super F, ? extends T&gt;)</code>
and <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Arrays.html#asList(T...)" title="class or interface in java.util" class="external-link"><code>Arrays.asList(Object[])</code></a></div>
</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;E&gt;&nbsp;boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#all(java.util.List,org.apache.calcite.linq4j.function.Predicate1)" class="member-name-link">all</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;? 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></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns whether <code>predicate</code> is true for all elements of
<code>list</code>.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;T1,<wbr>
R&gt;&nbsp;<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;R&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#apply(java.util.List,org.apache.calcite.linq4j.function.Function1)" class="member-name-link">apply</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;T1&gt;&nbsp;list,
<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,<wbr>R&gt;&nbsp;f)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Creates a copy of a list, applying a function to each element.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;T&gt;&nbsp;<a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function">EqualityComparer</a>&lt;T[]&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#arrayComparer()" class="member-name-link">arrayComparer</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns an <a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function"><code>EqualityComparer</code></a> that works on arrays of objects.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;T,<wbr>
R&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T,<wbr>R&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#constant(R)" class="member-name-link">constant</a><wbr>(R&nbsp;r)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns a 1-parameter function that always returns the same value.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;T,<wbr>
R&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T,<wbr>R&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#constantNull()" class="member-name-link">constantNull</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns a 1-parameter function that always returns null.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;E&gt;&nbsp;boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#exists(java.util.List,org.apache.calcite.linq4j.function.Predicate1)" class="member-name-link">exists</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;? 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></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns whether there is an element in <code>list</code> for which
<code>predicate</code> is true.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;T&gt;&nbsp;<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#falsePredicate1()" class="member-name-link">falsePredicate1</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">A predicate with one parameter that always returns <code>true</code>.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;T1,<wbr>
T2&gt;&nbsp;<a href="Predicate2.html" title="interface in org.apache.calcite.linq4j.function">Predicate2</a>&lt;T1,<wbr>T2&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#falsePredicate2()" class="member-name-link">falsePredicate2</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">A predicate with two parameters that always returns <code>false</code>.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;E&gt;&nbsp;<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;E&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#filter(java.util.List,org.apache.calcite.linq4j.function.Predicate1)" class="member-name-link">filter</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;E&gt;&nbsp;list,
<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;E&gt;&nbsp;predicate)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns a list that contains only elements of <code>list</code> that match
<code>predicate</code>.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a>&lt;? extends <a href="Function.html" title="interface in org.apache.calcite.linq4j.function">Function</a>&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#functionClass(java.lang.reflect.Type)" class="member-name-link">functionClass</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/reflect/Type.html" title="class or interface in java.lang.reflect" class="external-link">Type</a>&nbsp;aClass)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns the appropriate interface for a lambda function with
1 argument and the given return type.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;E&gt;&nbsp;<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;E&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#generate(int,java.util.function.IntFunction)" class="member-name-link">generate</a><wbr>(int&nbsp;size,
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/IntFunction.html" title="class or interface in java.util.function" class="external-link">IntFunction</a>&lt;E&gt;&nbsp;fn)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns a list generated by applying a function to each index between
0 and <code>size</code> - 1.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;T&gt;&nbsp;<a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function">EqualityComparer</a>&lt;T&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#identityComparer()" class="member-name-link">identityComparer</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<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>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;TSource&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;TSource,<wbr>TSource&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#identitySelector()" class="member-name-link">identitySelector</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;R&gt;&nbsp;<a href="Function0.html" title="interface in org.apache.calcite.linq4j.function">Function0</a>&lt;R&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#ignore0()" class="member-name-link">ignore0</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns a function of arity 0 that does nothing.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;R,<wbr>
T0&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;R,<wbr>T0&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#ignore1()" class="member-name-link">ignore1</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns a function of arity 1 that does nothing.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;R,<wbr>
T0,<wbr>
T1&gt;&nbsp;<a href="Function2.html" title="interface in org.apache.calcite.linq4j.function">Function2</a>&lt;R,<wbr>T0,<wbr>T1&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#ignore2()" class="member-name-link">ignore2</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns a function of arity 2 that does nothing.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;T extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Comparable.html" title="class or interface in java.lang" class="external-link">Comparable</a>&lt;T&gt;&gt;<br><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Comparator.html" title="class or interface in java.util" class="external-link">Comparator</a>&lt;T&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#nullsComparator(boolean,boolean)" class="member-name-link">nullsComparator</a><wbr>(boolean&nbsp;nullsFirst,
boolean&nbsp;reverse)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns a <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Comparator.html" title="class or interface in java.util" class="external-link"><code>Comparator</code></a> that handles null values.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;T extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Comparable.html" title="class or interface in java.lang" class="external-link">Comparable</a>&lt;T&gt;&gt;<br><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Comparator.html" title="class or interface in java.util" class="external-link">Comparator</a>&lt;T&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#nullsComparator(boolean,boolean,java.util.Comparator)" class="member-name-link">nullsComparator</a><wbr>(boolean&nbsp;nullsFirst,
boolean&nbsp;reverse,
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Comparator.html" title="class or interface in java.util" class="external-link">Comparator</a>&lt;T&gt;&nbsp;comparator)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns a <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Comparator.html" title="class or interface in java.util" class="external-link"><code>Comparator</code></a> that handles null values.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;T,<wbr>
T2&gt;&nbsp;<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#ofTypePredicate(java.lang.Class)" class="member-name-link">ofTypePredicate</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a>&lt;T2&gt;&nbsp;clazz)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Creates a predicate that returns whether an object is an instance of a
particular type or is null.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;T,<wbr>
T2&gt;&nbsp;<a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function">EqualityComparer</a>&lt;T&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#selectorComparer(org.apache.calcite.linq4j.function.Function1)" class="member-name-link">selectorComparer</a><wbr>(<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T,<wbr>T2&gt;&nbsp;selector)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<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>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;T1,<wbr>
T2&gt;&nbsp;<a href="Predicate2.html" title="interface in org.apache.calcite.linq4j.function">Predicate2</a>&lt;T1,<wbr>T2&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#toPredicate(org.apache.calcite.linq4j.function.Function2)" class="member-name-link">toPredicate</a><wbr>(<a href="Function2.html" title="interface in org.apache.calcite.linq4j.function">Function2</a>&lt;T1,<wbr>T2,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Boolean.html" title="class or interface in java.lang" class="external-link">Boolean</a>&gt;&nbsp;function)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Converts a 2-parameter function to a predicate.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;T1,<wbr>
T2&gt;&nbsp;<a href="Predicate2.html" title="interface in org.apache.calcite.linq4j.function">Predicate2</a>&lt;T1,<wbr>T2&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#toPredicate2(org.apache.calcite.linq4j.function.Predicate1)" class="member-name-link">toPredicate2</a><wbr>(<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T1&gt;&nbsp;p1)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;TSource&gt;&nbsp;<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;TSource,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#toStringSelector()" class="member-name-link">toStringSelector</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns a selector that calls the <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link"><code>Object.toString()</code></a> method on
each element.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;T&gt;&nbsp;<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#truePredicate1()" class="member-name-link">truePredicate1</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">A predicate with one parameter that always returns <code>true</code>.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static &lt;T1,<wbr>
T2&gt;&nbsp;<a href="Predicate2.html" title="interface in org.apache.calcite.linq4j.function">Predicate2</a>&lt;T1,<wbr>T2&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#truePredicate2()" class="member-name-link">truePredicate2</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">A predicate with two parameters that always returns <code>true</code>.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ FIELD DETAIL =========== -->
<li>
<section class="field-details" id="field-detail">
<h2>Field Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="FUNCTION_RESULT_TYPES">
<h3>FUNCTION_RESULT_TYPES</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a>&lt;<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a>&lt;? extends <a href="Function.html" title="interface in org.apache.calcite.linq4j.function">Function</a>&gt;,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a>&gt;</span>&nbsp;<span class="element-name">FUNCTION_RESULT_TYPES</span></div>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="constant(R)">
<h3 id="constant(java.lang.Object)">constant</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T,<wbr>
R&gt;</span>&nbsp;<span class="return-type"><a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T,<wbr>R&gt;</span>&nbsp;<span class="element-name">constant</span><wbr><span class="parameters">(R&nbsp;r)</span></div>
<div class="block">Returns a 1-parameter function that always returns the same value.</div>
</section>
</li>
<li>
<section class="detail" id="constantNull()">
<h3>constantNull</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T,<wbr>
R&gt;</span>&nbsp;<span class="return-type"><a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T,<wbr>R&gt;</span>&nbsp;<span class="element-name">constantNull</span>()</div>
<div class="block">Returns a 1-parameter function that always returns null.</div>
</section>
</li>
<li>
<section class="detail" id="truePredicate1()">
<h3>truePredicate1</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T&gt;</span>&nbsp;<span class="return-type"><a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T&gt;</span>&nbsp;<span class="element-name">truePredicate1</span>()</div>
<div class="block">A predicate with one parameter that always returns <code>true</code>.</div>
<dl class="notes">
<dt>Type Parameters:</dt>
<dd><code>T</code> - First parameter type</dd>
<dt>Returns:</dt>
<dd>Predicate that always returns true</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="falsePredicate1()">
<h3>falsePredicate1</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T&gt;</span>&nbsp;<span class="return-type"><a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T&gt;</span>&nbsp;<span class="element-name">falsePredicate1</span>()</div>
<div class="block">A predicate with one parameter that always returns <code>true</code>.</div>
<dl class="notes">
<dt>Type Parameters:</dt>
<dd><code>T</code> - First parameter type</dd>
<dt>Returns:</dt>
<dd>Predicate that always returns true</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="truePredicate2()">
<h3>truePredicate2</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T1,<wbr>
T2&gt;</span>&nbsp;<span class="return-type"><a href="Predicate2.html" title="interface in org.apache.calcite.linq4j.function">Predicate2</a>&lt;T1,<wbr>T2&gt;</span>&nbsp;<span class="element-name">truePredicate2</span>()</div>
<div class="block">A predicate with two parameters that always returns <code>true</code>.</div>
<dl class="notes">
<dt>Type Parameters:</dt>
<dd><code>T1</code> - First parameter type</dd>
<dd><code>T2</code> - Second parameter type</dd>
<dt>Returns:</dt>
<dd>Predicate that always returns true</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="falsePredicate2()">
<h3>falsePredicate2</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T1,<wbr>
T2&gt;</span>&nbsp;<span class="return-type"><a href="Predicate2.html" title="interface in org.apache.calcite.linq4j.function">Predicate2</a>&lt;T1,<wbr>T2&gt;</span>&nbsp;<span class="element-name">falsePredicate2</span>()</div>
<div class="block">A predicate with two parameters that always returns <code>false</code>.</div>
<dl class="notes">
<dt>Type Parameters:</dt>
<dd><code>T1</code> - First parameter type</dd>
<dd><code>T2</code> - Second parameter type</dd>
<dt>Returns:</dt>
<dd>Predicate that always returns false</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="identitySelector()">
<h3>identitySelector</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;TSource&gt;</span>&nbsp;<span class="return-type"><a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;TSource,<wbr>TSource&gt;</span>&nbsp;<span class="element-name">identitySelector</span>()</div>
</section>
</li>
<li>
<section class="detail" id="toStringSelector()">
<h3>toStringSelector</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;TSource&gt;</span>&nbsp;<span class="return-type"><a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;TSource,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</span>&nbsp;<span class="element-name">toStringSelector</span>()</div>
<div class="block">Returns a selector that calls the <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link"><code>Object.toString()</code></a> method on
each element.</div>
</section>
</li>
<li>
<section class="detail" id="ofTypePredicate(java.lang.Class)">
<h3>ofTypePredicate</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T,<wbr>
T2&gt;</span>&nbsp;<span class="return-type"><a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T&gt;</span>&nbsp;<span class="element-name">ofTypePredicate</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a>&lt;T2&gt;&nbsp;clazz)</span></div>
<div class="block">Creates a predicate that returns whether an object is an instance of a
particular type or is null.</div>
<dl class="notes">
<dt>Type Parameters:</dt>
<dd><code>T</code> - Type of objects to test</dd>
<dd><code>T2</code> - Desired type</dd>
<dt>Parameters:</dt>
<dd><code>clazz</code> - Desired type</dd>
<dt>Returns:</dt>
<dd>Predicate that tests for desired type</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="toPredicate2(org.apache.calcite.linq4j.function.Predicate1)">
<h3>toPredicate2</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T1,<wbr>
T2&gt;</span>&nbsp;<span class="return-type"><a href="Predicate2.html" title="interface in org.apache.calcite.linq4j.function">Predicate2</a>&lt;T1,<wbr>T2&gt;</span>&nbsp;<span class="element-name">toPredicate2</span><wbr><span class="parameters">(<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;T1&gt;&nbsp;p1)</span></div>
</section>
</li>
<li>
<section class="detail" id="toPredicate(org.apache.calcite.linq4j.function.Function2)">
<h3>toPredicate</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T1,<wbr>
T2&gt;</span>&nbsp;<span class="return-type"><a href="Predicate2.html" title="interface in org.apache.calcite.linq4j.function">Predicate2</a>&lt;T1,<wbr>T2&gt;</span>&nbsp;<span class="element-name">toPredicate</span><wbr><span class="parameters">(<a href="Function2.html" title="interface in org.apache.calcite.linq4j.function">Function2</a>&lt;T1,<wbr>T2,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Boolean.html" title="class or interface in java.lang" class="external-link">Boolean</a>&gt;&nbsp;function)</span></div>
<div class="block">Converts a 2-parameter function to a predicate.</div>
</section>
</li>
<li>
<section class="detail" id="functionClass(java.lang.reflect.Type)">
<h3>functionClass</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a>&lt;? extends <a href="Function.html" title="interface in org.apache.calcite.linq4j.function">Function</a>&gt;</span>&nbsp;<span class="element-name">functionClass</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/reflect/Type.html" title="class or interface in java.lang.reflect" class="external-link">Type</a>&nbsp;aClass)</span></div>
<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 class="notes">
<dt>Parameters:</dt>
<dd><code>aClass</code> - Return type</dd>
<dt>Returns:</dt>
<dd>Function class</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="adapt(org.apache.calcite.linq4j.function.IntegerFunction1)">
<h3>adapt</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T1&gt;</span>&nbsp;<span class="return-type"><a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Integer.html" title="class or interface in java.lang" class="external-link">Integer</a>&gt;</span>&nbsp;<span class="element-name">adapt</span><wbr><span class="parameters">(<a href="IntegerFunction1.html" title="interface in org.apache.calcite.linq4j.function">IntegerFunction1</a>&lt;T1&gt;&nbsp;f)</span></div>
<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 <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Integer.html" title="class or interface in java.lang" class="external-link"><code>Integer</code></a>.</div>
</section>
</li>
<li>
<section class="detail" id="adapt(org.apache.calcite.linq4j.function.DoubleFunction1)">
<h3>adapt</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T1&gt;</span>&nbsp;<span class="return-type"><a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Double.html" title="class or interface in java.lang" class="external-link">Double</a>&gt;</span>&nbsp;<span class="element-name">adapt</span><wbr><span class="parameters">(<a href="DoubleFunction1.html" title="interface in org.apache.calcite.linq4j.function">DoubleFunction1</a>&lt;T1&gt;&nbsp;f)</span></div>
<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 <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Double.html" title="class or interface in java.lang" class="external-link"><code>Double</code></a>.</div>
</section>
</li>
<li>
<section class="detail" id="adapt(org.apache.calcite.linq4j.function.LongFunction1)">
<h3>adapt</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T1&gt;</span>&nbsp;<span class="return-type"><a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Long.html" title="class or interface in java.lang" class="external-link">Long</a>&gt;</span>&nbsp;<span class="element-name">adapt</span><wbr><span class="parameters">(<a href="LongFunction1.html" title="interface in org.apache.calcite.linq4j.function">LongFunction1</a>&lt;T1&gt;&nbsp;f)</span></div>
<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 <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Long.html" title="class or interface in java.lang" class="external-link"><code>Long</code></a>.</div>
</section>
</li>
<li>
<section class="detail" id="adapt(org.apache.calcite.linq4j.function.FloatFunction1)">
<h3>adapt</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T1&gt;</span>&nbsp;<span class="return-type"><a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Float.html" title="class or interface in java.lang" class="external-link">Float</a>&gt;</span>&nbsp;<span class="element-name">adapt</span><wbr><span class="parameters">(<a href="FloatFunction1.html" title="interface in org.apache.calcite.linq4j.function">FloatFunction1</a>&lt;T1&gt;&nbsp;f)</span></div>
<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 <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Float.html" title="class or interface in java.lang" class="external-link"><code>Float</code></a>.</div>
</section>
</li>
<li>
<section class="detail" id="adapt(java.util.List,org.apache.calcite.linq4j.function.Function1)">
<h3>adapt</h3>
<div class="member-signature"><span class="annotations"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang" class="external-link">@Deprecated</a>
</span><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T1,<wbr>
R&gt;</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;R&gt;</span>&nbsp;<span class="element-name">adapt</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;T1&gt;&nbsp;list,
<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,<wbr>R&gt;&nbsp;f)</span></div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">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>
</section>
</li>
<li>
<section class="detail" id="adapt(T[],org.apache.calcite.linq4j.function.Function1)">
<h3 id="adapt(java.lang.Object[],org.apache.calcite.linq4j.function.Function1)">adapt</h3>
<div class="member-signature"><span class="annotations"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang" class="external-link">@Deprecated</a>
</span><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T,<wbr>
R&gt;</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;R&gt;</span>&nbsp;<span class="element-name">adapt</span><wbr><span class="parameters">(T[]&nbsp;ts,
<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T,<wbr>R&gt;&nbsp;f)</span></div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">Use <code>Lists.transform(java.util.List&lt;F&gt;, com.google.common.base.Function&lt;? super F, ? extends T&gt;)</code>
and <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Arrays.html#asList(T...)" title="class or interface in java.util" class="external-link"><code>Arrays.asList(Object[])</code></a></div>
</div>
<div class="block">Creates a view of an array that applies a function to each element.</div>
</section>
</li>
<li>
<section class="detail" id="apply(java.util.List,org.apache.calcite.linq4j.function.Function1)">
<h3>apply</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T1,<wbr>
R&gt;</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;R&gt;</span>&nbsp;<span class="element-name">apply</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;T1&gt;&nbsp;list,
<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T1,<wbr>R&gt;&nbsp;f)</span></div>
<div class="block">Creates a copy of a list, applying a function to each element.</div>
</section>
</li>
<li>
<section class="detail" id="filter(java.util.List,org.apache.calcite.linq4j.function.Predicate1)">
<h3>filter</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;E&gt;</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;E&gt;</span>&nbsp;<span class="element-name">filter</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;E&gt;&nbsp;list,
<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;E&gt;&nbsp;predicate)</span></div>
<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>
</section>
</li>
<li>
<section class="detail" id="exists(java.util.List,org.apache.calcite.linq4j.function.Predicate1)">
<h3>exists</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;E&gt;</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">exists</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;? extends E&gt;&nbsp;list,
<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;E&gt;&nbsp;predicate)</span></div>
<div class="block">Returns whether there is an element in <code>list</code> for which
<code>predicate</code> is true.</div>
</section>
</li>
<li>
<section class="detail" id="all(java.util.List,org.apache.calcite.linq4j.function.Predicate1)">
<h3>all</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;E&gt;</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">all</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;? extends E&gt;&nbsp;list,
<a href="Predicate1.html" title="interface in org.apache.calcite.linq4j.function">Predicate1</a>&lt;E&gt;&nbsp;predicate)</span></div>
<div class="block">Returns whether <code>predicate</code> is true for all elements of
<code>list</code>.</div>
</section>
</li>
<li>
<section class="detail" id="generate(int,java.util.function.IntFunction)">
<h3>generate</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;E&gt;</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;E&gt;</span>&nbsp;<span class="element-name">generate</span><wbr><span class="parameters">(int&nbsp;size,
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/IntFunction.html" title="class or interface in java.util.function" class="external-link">IntFunction</a>&lt;E&gt;&nbsp;fn)</span></div>
<div class="block">Returns a list generated by applying a function to each index between
0 and <code>size</code> - 1.</div>
</section>
</li>
<li>
<section class="detail" id="ignore0()">
<h3>ignore0</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;R&gt;</span>&nbsp;<span class="return-type"><a href="Function0.html" title="interface in org.apache.calcite.linq4j.function">Function0</a>&lt;R&gt;</span>&nbsp;<span class="element-name">ignore0</span>()</div>
<div class="block">Returns a function of arity 0 that does nothing.</div>
<dl class="notes">
<dt>Type Parameters:</dt>
<dd><code>R</code> - Return type</dd>
<dt>Returns:</dt>
<dd>Function that does nothing.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="ignore1()">
<h3>ignore1</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;R,<wbr>
T0&gt;</span>&nbsp;<span class="return-type"><a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;R,<wbr>T0&gt;</span>&nbsp;<span class="element-name">ignore1</span>()</div>
<div class="block">Returns a function of arity 1 that does nothing.</div>
<dl class="notes">
<dt>Type Parameters:</dt>
<dd><code>R</code> - Return type</dd>
<dd><code>T0</code> - Type of parameter 0</dd>
<dt>Returns:</dt>
<dd>Function that does nothing.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="ignore2()">
<h3>ignore2</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;R,<wbr>
T0,<wbr>
T1&gt;</span>&nbsp;<span class="return-type"><a href="Function2.html" title="interface in org.apache.calcite.linq4j.function">Function2</a>&lt;R,<wbr>T0,<wbr>T1&gt;</span>&nbsp;<span class="element-name">ignore2</span>()</div>
<div class="block">Returns a function of arity 2 that does nothing.</div>
<dl class="notes">
<dt>Type Parameters:</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>Returns:</dt>
<dd>Function that does nothing.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="nullsComparator(boolean,boolean)">
<h3>nullsComparator</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Comparable.html" title="class or interface in java.lang" class="external-link">Comparable</a>&lt;T&gt;&gt;</span>
<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Comparator.html" title="class or interface in java.util" class="external-link">Comparator</a>&lt;T&gt;</span>&nbsp;<span class="element-name">nullsComparator</span><wbr><span class="parameters">(boolean&nbsp;nullsFirst,
boolean&nbsp;reverse)</span></div>
<div class="block">Returns a <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Comparator.html" title="class or interface in java.util" class="external-link"><code>Comparator</code></a> that handles null values.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>nullsFirst</code> - Whether nulls come before all other values</dd>
<dd><code>reverse</code> - Whether to reverse the usual order of <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Comparable.html" title="class or interface in java.lang" class="external-link"><code>Comparable</code></a>s</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="nullsComparator(boolean,boolean,java.util.Comparator)">
<h3>nullsComparator</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Comparable.html" title="class or interface in java.lang" class="external-link">Comparable</a>&lt;T&gt;&gt;</span>
<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Comparator.html" title="class or interface in java.util" class="external-link">Comparator</a>&lt;T&gt;</span>&nbsp;<span class="element-name">nullsComparator</span><wbr><span class="parameters">(boolean&nbsp;nullsFirst,
boolean&nbsp;reverse,
<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Comparator.html" title="class or interface in java.util" class="external-link">Comparator</a>&lt;T&gt;&nbsp;comparator)</span></div>
<div class="block">Returns a <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Comparator.html" title="class or interface in java.util" class="external-link"><code>Comparator</code></a> that handles null values.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>nullsFirst</code> - Whether nulls come before all other values</dd>
<dd><code>reverse</code> - Whether to reverse the usual order of <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Comparable.html" title="class or interface in java.lang" class="external-link"><code>Comparable</code></a>s</dd>
<dd><code>comparator</code> - Comparator to be used for comparison</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="identityComparer()">
<h3>identityComparer</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T&gt;</span>&nbsp;<span class="return-type"><a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function">EqualityComparer</a>&lt;T&gt;</span>&nbsp;<span class="element-name">identityComparer</span>()</div>
<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>
</section>
</li>
<li>
<section class="detail" id="arrayComparer()">
<h3>arrayComparer</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T&gt;</span>&nbsp;<span class="return-type"><a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function">EqualityComparer</a>&lt;T[]&gt;</span>&nbsp;<span class="element-name">arrayComparer</span>()</div>
<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>
</section>
</li>
<li>
<section class="detail" id="selectorComparer(org.apache.calcite.linq4j.function.Function1)">
<h3>selectorComparer</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="type-parameters">&lt;T,<wbr>
T2&gt;</span>&nbsp;<span class="return-type"><a href="EqualityComparer.html" title="interface in org.apache.calcite.linq4j.function">EqualityComparer</a>&lt;T&gt;</span>&nbsp;<span class="element-name">selectorComparer</span><wbr><span class="parameters">(<a href="Function1.html" title="interface in org.apache.calcite.linq4j.function">Function1</a>&lt;T,<wbr>T2&gt;&nbsp;selector)</span></div>
<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>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &copy; 2012-2023 Apache Software Foundation. All Rights Reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>