Package com.usatiuk.objects.iterators

# Class ReversibleKvIterator<K extends Comparable<K>,V>

java.lang.Object
com.usatiuk.objects.iterators.ReversibleKvIterator<K,V>

All Implemented Interfaces:
  `CloseableKvIterator<K,V>`, `AutoCloseable`, `Iterator<org.apache.commons.lang3.tuple.Pair<K,V>>`

Direct Known Subclasses:
  `KeyPredicateKvIterator`, `MergingKvIterator`, `NavigableMapKvIterator`, `TombstoneSkippingIterator`

public abstract class ReversibleKvIterator<K extends Comparable<K>,V> extends Object implements CloseableKvIterator<K,V>

## Field Summary

Fields
Modifier and Type
Field
Description
`protected boolean`
`_goingForward`

## Constructor Summary

Constructors
Constructor
Description
`ReversibleKvIterator()`

## Method Summary

Modifier and Type
Method
Description
`protected abstract boolean`
`hasImpl()`
`boolean`
`hasNext()`
`boolean`
`hasPrev()`
`org.apache.commons.lang3.tuple.Pair<K,V>`
`next()`
`protected abstract org.apache.commons.lang3.tuple.Pair<K,V>`
`nextImpl()`
`protected abstract K`
`peekImpl()`
`K`
`peekNextKey()`
`K`
`peekPrevKey()`
`org.apache.commons.lang3.tuple.Pair<K,V>`
`prev()`
`protected abstract void`
`reverse()`
`void`
`skip()`
`protected abstract void`
`skipImpl()`
`void`
`skipPrev()`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface com.usatiuk.objects.iterators.CloseableKvIterator

`close, reversed`

### Methods inherited from interface java.util.Iterator

`forEachRemaining, remove`

## Field Details

### _goingForward

protected boolean _goingForward

## Constructor Details

### ReversibleKvIterator

public ReversibleKvIterator()

## Method Details

### reverse

protected abstract void reverse()

### peekImpl

protected abstract K peekImpl()

### skipImpl

protected abstract void skipImpl()

### hasImpl

protected abstract boolean hasImpl()

### nextImpl

protected abstract org.apache.commons.lang3.tuple.Pair<K,V> nextImpl()

### peekNextKey

public K peekNextKey()

Specified by:
  `peekNextKey` in interface `CloseableKvIterator<K extends Comparable<K>,V>`

### skip

public void skip()

Specified by:
  `skip` in interface `CloseableKvIterator<K extends Comparable<K>,V>`

### hasNext

public boolean hasNext()

Specified by:
  `hasNext` in interface `Iterator<K extends Comparable<K>>`

### next

public org.apache.commons.lang3.tuple.Pair<K,V> next()

Specified by:
  `next` in interface `Iterator<K extends Comparable<K>>`

### peekPrevKey

public K peekPrevKey()

Specified by:
  `peekPrevKey` in interface `CloseableKvIterator<K extends Comparable<K>,V>`

### prev

public org.apache.commons.lang3.tuple.Pair<K,V> prev()

Specified by:
  `prev` in interface `CloseableKvIterator<K extends Comparable<K>,V>`

### hasPrev

public boolean hasPrev()

Specified by:
  `hasPrev` in interface `CloseableKvIterator<K extends Comparable<K>,V>`

### skipPrev

public void skipPrev()

Specified by:
  `skipPrev` in interface `CloseableKvIterator<K extends Comparable<K>,V>`