Overview | Package | Class | Use | Tree | Deprecated | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.lucene.util.fst
Class BytesRefFSTEnum<T>

    java.lang.Object
      org.apache.lucene.util.fst.BytesRefFSTEnum<T>

    public final class BytesRefFSTEnum<T>

extends Object

Enumerates all input (BytesRef) + output pairs in an FST.

WARNING: This API is experimental and might change in incompatible ways in the next release.

Nested Class Summary
`static class` | `BytesRefFSTEnum.InputOutput<T>` Holds a single input (BytesRef) + output pair.

Field Summary
`protected FST.Arc<T>[]` | `arcs`
`protected FST<T>` | `fst`
`protected FST.BytesReader` | `fstReader`
`protected T` | `NO_OUTPUT`
`protected T[]` | `output`
`protected FST.Arc<T>` | `scratchArc`
`protected int` | `targetLength`
`protected int` | `upto`

Constructor Summary
`BytesRefFSTEnum(FST<T> fst)` doFloor controls the behavior of advance: if it's true doFloor is true, advance positions to the biggest term before target.

Method Summary
`BytesRefFSTEnum.InputOutput<T>` | `current()`
`protected void` | `doNext()`
`protected void` | `doSeekCeil()` Seeks to smallest term that's >= target.
`protected boolean` | `doSeekExact()` Seeks to exactly target term.
`protected void` | `doSeekFloor()` Seeks to largest term that's <= target.
`protected int` | `getCurrentLabel()`
`protected int` | `getTargetLabel()`
`protected void` | `grow()`
`BytesRefFSTEnum.InputOutput<T>` | `next()`
`protected void` | `rewindPrefix()` Rewinds enum state to match the shared prefix between current term and target term
`BytesRefFSTEnum.InputOutput<T>` | `seekCeil(BytesRef target)` Seeks to smallest term that's >= target.
`BytesRefFSTEnum.InputOutput<T>` | `seekExact(BytesRef target)` Seeks to exactly this term, returning null if the term doesn't exist.
`BytesRefFSTEnum.InputOutput<T>` | `seekFloor(BytesRef target)` Seeks to biggest term that's <= target.
`protected void` | `setCurrentLabel(int label)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### fst

    protected final FST<T> fst

### arcs

    protected FST.Arc<T>[] arcs

### output

    protected T[] output

### NO_OUTPUT

    protected final T NO_OUTPUT

### fstReader

    protected final FST.BytesReader fstReader

### scratchArc

    protected final FST.Arc<T> scratchArc

### upto

    protected int upto

### targetLength

    protected int targetLength

Constructor Detail

### BytesRefFSTEnum

    public BytesRefFSTEnum(FST<T> fst)

  doFloor controls the behavior of advance: if it's true doFloor is true, advance positions to the biggest term before target.

Method Detail

### current

    public BytesRefFSTEnum.InputOutput<T> current()

### next

    public BytesRefFSTEnum.InputOutput<T> next()
                                        throws IOException

  Throws:
    `IOException`

### seekCeil

    public BytesRefFSTEnum.InputOutput<T> seekCeil(BytesRef target)
                                            throws IOException

  Seeks to smallest term that's >= target.

  Throws:
    `IOException`

### seekFloor

    public BytesRefFSTEnum.InputOutput<T> seekFloor(BytesRef target)
                                             throws IOException

  Seeks to biggest term that's <= target.

  Throws:
    `IOException`

### seekExact

    public BytesRefFSTEnum.InputOutput<T> seekExact(BytesRef target)
                                             throws IOException

  Seeks to exactly this term, returning null if the term doesn't exist. This is faster than using `seekFloor(org.apache.lucene.util.BytesRef)` or `seekCeil(org.apache.lucene.util.BytesRef)` because it short-circuits as soon the match is not found.

  Throws:
    `IOException`

### getTargetLabel

    protected int getTargetLabel()

### getCurrentLabel

    protected int getCurrentLabel()

### setCurrentLabel

    protected void setCurrentLabel(int label)

### grow

    protected void grow()

### rewindPrefix

    protected final void rewindPrefix()
                               throws IOException

  Rewinds enum state to match the shared prefix between current term and target term

  Throws:
    `IOException`

### doNext

    protected void doNext()
                   throws IOException

  Throws:
    `IOException`

### doSeekCeil

    protected void doSeekCeil()
                       throws IOException

  Seeks to smallest term that's >= target.

  Throws:
    `IOException`

### doSeekFloor

    protected void doSeekFloor()
                        throws IOException

  Seeks to largest term that's <= target.

  Throws:
    `IOException`

### doSeekExact

    protected boolean doSeekExact()
                           throws IOException

  Seeks to exactly target term.

  Throws:
    `IOException`

Overview | Package | Class | Use | Tree | Deprecated | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.