blob: 870da6b3a49da39096ad2c936bf5a710c2e15d5c [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>Linq4j.IterableEnumerator (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="Linq4j.IterableEnumerator (Apache Calcite API)";
}
}
catch(err) {
}
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete 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/Linq4j.IterableEnumerator.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>Nested&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</a></div>
<h2 title="Class Linq4j.IterableEnumerator" class="title">Class Linq4j.IterableEnumerator&lt;T&gt;</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.apache.calcite.linq4j.Linq4j.IterableEnumerator&lt;T&gt;</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - element type</dd>
</dl>
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code>java.lang.AutoCloseable</code>, <code><a href="Enumerator.html" title="interface in org.apache.calcite.linq4j">Enumerator</a>&lt;T&gt;</code></dd>
</dl>
<dl>
<dt>Enclosing class:</dt>
<dd><a href="Linq4j.html" title="class in org.apache.calcite.linq4j">Linq4j</a></dd>
</dl>
<hr>
<pre>static class <span class="typeNameLabel">Linq4j.IterableEnumerator&lt;T&gt;</span>
extends java.lang.Object
implements <a href="Enumerator.html" title="interface in org.apache.calcite.linq4j">Enumerator</a>&lt;T&gt;</pre>
<div class="block">Iterable enumerator.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== 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>(package private) <a href="Linq4j.IterableEnumerator.html" title="type parameter in Linq4j.IterableEnumerator">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#current">current</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private java.lang.Iterable&lt;? extends <a href="Linq4j.IterableEnumerator.html" title="type parameter in Linq4j.IterableEnumerator">T</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#iterable">iterable</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>(package private) java.util.Iterator&lt;? extends <a href="Linq4j.IterableEnumerator.html" title="type parameter in Linq4j.IterableEnumerator">T</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#iterator">iterator</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">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.lang.Iterable)">IterableEnumerator</a></span>&#8203;(java.lang.Iterable&lt;? extends <a href="Linq4j.IterableEnumerator.html" title="type parameter in Linq4j.IterableEnumerator">T</a>&gt;&nbsp;iterable)</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="t2" class="tableTab"><span><a href="javascript:show(2);">Instance 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></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>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#close()">close</a></span>()</code></th>
<td class="colLast">
<div class="block">Closes this enumerable and releases resources.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="Linq4j.IterableEnumerator.html" title="type parameter in Linq4j.IterableEnumerator">T</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#current()">current</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets the current element in the collection.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#moveNext()">moveNext</a></span>()</code></th>
<td class="colLast">
<div class="block">Advances the enumerator to the next element of the collection.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#reset()">reset</a></span>()</code></th>
<td class="colLast">
<div class="block">Sets the enumerator to its initial position, which is before the first
element in the collection.</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="iterable">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>iterable</h4>
<pre>private final&nbsp;java.lang.Iterable&lt;? extends <a href="Linq4j.IterableEnumerator.html" title="type parameter in Linq4j.IterableEnumerator">T</a>&gt; iterable</pre>
</li>
</ul>
<a id="iterator">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>iterator</h4>
<pre>java.util.Iterator&lt;? extends <a href="Linq4j.IterableEnumerator.html" title="type parameter in Linq4j.IterableEnumerator">T</a>&gt; iterator</pre>
</li>
</ul>
<a id="current">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>current</h4>
<pre><a href="Linq4j.IterableEnumerator.html" title="type parameter in Linq4j.IterableEnumerator">T</a> current</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;(java.lang.Iterable)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>IterableEnumerator</h4>
<pre>IterableEnumerator&#8203;(java.lang.Iterable&lt;? extends <a href="Linq4j.IterableEnumerator.html" title="type parameter in Linq4j.IterableEnumerator">T</a>&gt;&nbsp;iterable)</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="current()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>current</h4>
<pre class="methodSignature">public&nbsp;<a href="Linq4j.IterableEnumerator.html" title="type parameter in Linq4j.IterableEnumerator">T</a>&nbsp;current()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Enumerator.html#current()">Enumerator</a></code></span></div>
<div class="block">Gets the current element in the collection.
<p>After an enumerator is created or after the <a href="Enumerator.html#reset()"><code>Enumerator.reset()</code></a> method is
called, the <a href="Enumerator.html#moveNext()"><code>Enumerator.moveNext()</code></a> method must be called to advance the
enumerator to the first element of the collection before reading the
value of the <code>current</code> property; otherwise, <code>current</code> is
undefined.
<p>This method also throws <code>NoSuchElementException</code> if
the last call to <code>moveNext</code> returned <code>false</code>, which indicates
the end of the collection.
<p>This method does not move the position of the enumerator, and
consecutive calls to <code>current</code> return the same object until either
<code>moveNext</code> or <code>reset</code> is called.
<p>An enumerator remains valid as long as the collection remains
unchanged. If changes are made to the collection, such as adding,
modifying, or deleting elements, the enumerator is irrecoverably
invalidated. The next call to <code>moveNext</code> or <code>reset</code> may,
at the discretion of the implementation, throw a
<code>ConcurrentModificationException</code>. If the collection is
modified between <code>moveNext</code> and <code>current</code>, <code>current</code>
returns the element that it is set to, even if the enumerator is already
invalidated.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Enumerator.html#current()">current</a></code>&nbsp;in interface&nbsp;<code><a href="Enumerator.html" title="interface in org.apache.calcite.linq4j">Enumerator</a>&lt;<a href="Linq4j.IterableEnumerator.html" title="type parameter in Linq4j.IterableEnumerator">T</a>&gt;</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Current element</dd>
</dl>
</li>
</ul>
<a id="moveNext()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>moveNext</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;moveNext()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Enumerator.html#moveNext()">Enumerator</a></code></span></div>
<div class="block">Advances the enumerator to the next element of the collection.
<p>After an enumerator is created or after the <code>reset</code> method is
called, an enumerator is positioned before the first element of the
collection, and the first call to the <code>moveNext</code> method moves the
enumerator over the first element of the collection.
<p>If <code>moveNext</code> passes the end of the collection, the enumerator
is positioned after the last element in the collection and
<code>moveNext</code> returns <code>false</code>. When the enumerator is at this
position, subsequent calls to <code>moveNext</code> also return <code>false</code>
until <code>#reset</code> is called.
<p>An enumerator remains valid as long as the collection remains
unchanged. If changes are made to the collection, such as adding,
modifying, or deleting elements, the enumerator is irrecoverably
invalidated. The next call to <code>moveNext</code> or <a href="Enumerator.html#reset()"><code>Enumerator.reset()</code></a> may,
at the discretion of the implementation, throw a
<code>ConcurrentModificationException</code>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Enumerator.html#moveNext()">moveNext</a></code>&nbsp;in interface&nbsp;<code><a href="Enumerator.html" title="interface in org.apache.calcite.linq4j">Enumerator</a>&lt;<a href="Linq4j.IterableEnumerator.html" title="type parameter in Linq4j.IterableEnumerator">T</a>&gt;</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if the enumerator was successfully advanced to the
next element; <code>false</code> if the enumerator has passed the end of
the collection</dd>
</dl>
</li>
</ul>
<a id="reset()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reset</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;reset()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Enumerator.html#reset()">Enumerator</a></code></span></div>
<div class="block">Sets the enumerator to its initial position, which is before the first
element in the collection.
<p>An enumerator remains valid as long as the collection remains
unchanged. If changes are made to the collection, such as adding,
modifying, or deleting elements, the enumerator is irrecoverably
invalidated. The next call to <a href="Enumerator.html#moveNext()"><code>Enumerator.moveNext()</code></a> or <code>reset</code> may,
at the discretion of the implementation, throw a
<code>ConcurrentModificationException</code>.
<p>This method is optional; it may throw
<code>UnsupportedOperationException</code>.
<h3>Notes to Implementers</h3>
<p>All calls to Reset must result in the same state for the enumerator.
The preferred implementation is to move the enumerator to the beginning
of the collection, before the first element. This invalidates the
enumerator if the collection has been modified since the enumerator was
created, which is consistent with <a href="Enumerator.html#moveNext()"><code>Enumerator.moveNext()</code></a> and
<a href="Enumerator.html#current()"><code>Enumerator.current()</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Enumerator.html#reset()">reset</a></code>&nbsp;in interface&nbsp;<code><a href="Enumerator.html" title="interface in org.apache.calcite.linq4j">Enumerator</a>&lt;<a href="Linq4j.IterableEnumerator.html" title="type parameter in Linq4j.IterableEnumerator">T</a>&gt;</code></dd>
</dl>
</li>
</ul>
<a id="close()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>close</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;close()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Enumerator.html#close()">Enumerator</a></code></span></div>
<div class="block">Closes this enumerable and releases resources.
<p>This method is idempotent. Calling it multiple times has the same effect
as calling it once.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>close</code>&nbsp;in interface&nbsp;<code>java.lang.AutoCloseable</code></dd>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Enumerator.html#close()">close</a></code>&nbsp;in interface&nbsp;<code><a href="Enumerator.html" title="interface in org.apache.calcite.linq4j">Enumerator</a>&lt;<a href="Linq4j.IterableEnumerator.html" title="type parameter in Linq4j.IterableEnumerator">T</a>&gt;</code></dd>
</dl>
</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/Linq4j.IterableEnumerator.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>Nested&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>