git://source.jalview.org
/
jalview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
JAL-2759 Fix errant RangeElementsIterator (unit tests were failing)
[jalview.git]
/
src
/
jalview
/
datamodel
/
RangeElementsIterator.java
diff --git
a/src/jalview/datamodel/RangeElementsIterator.java
b/src/jalview/datamodel/RangeElementsIterator.java
index
ca6c4f7
..
85272f2
100644
(file)
--- a/
src/jalview/datamodel/RangeElementsIterator.java
+++ b/
src/jalview/datamodel/RangeElementsIterator.java
@@
-23,29
+23,27
@@
public class RangeElementsIterator implements Iterator<Integer>
private int[] nextRange = null;
private int[] nextRange = null;
- RangeElementsIterator(int from, int to, Iterator<int[]> it)
+ RangeElementsIterator(Iterator<int[]> it)
{
{
- last = to;
- current = from;
- next = from;
rangeIterator = it;
if (rangeIterator.hasNext())
{
nextRange = rangeIterator.next();
rangeIterator = it;
if (rangeIterator.hasNext())
{
nextRange = rangeIterator.next();
+ next = nextRange[0];
+ last = nextRange[1];
}
}
- checkNextRange();
}
@Override
public boolean hasNext()
{
}
@Override
public boolean hasNext()
{
- return next <= last;
+ return rangeIterator.hasNext() || next <= last;
}
@Override
public Integer next()
{
}
@Override
public Integer next()
{
- if (next > last)
+ if (!hasNext())
{
throw new NoSuchElementException();
}
{
throw new NoSuchElementException();
}
@@
-66,12
+64,13
@@
public class RangeElementsIterator implements Iterator<Integer>
*/
private void checkNextRange()
{
*/
private void checkNextRange()
{
- if (nextRange != null && next >= nextRange[0])
+ if (nextRange != null && next > nextRange[1])
{
{
- next = nextRange[1] + 1;
if (rangeIterator.hasNext())
{
nextRange = rangeIterator.next();
if (rangeIterator.hasNext())
{
nextRange = rangeIterator.next();
+ next = nextRange[0];
+ last = nextRange[1];
}
else
{
}
else
{