org.apache.lucene.search.suggest
Class BytesRefArray

java.lang.Object
  extended by org.apache.lucene.search.suggest.BytesRefArray

public final class BytesRefArray
extends Object

A simple append only random-access BytesRef array that stores full copies of the appended bytes in a ByteBlockPool. Note: This class is not Thread-Safe!

WARNING: This API is experimental and might change in incompatible ways in the next release.
NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

Constructor Summary
BytesRefArray(Counter bytesUsed)
          Creates a new BytesRefArray with a counter to track allocated bytes
 
Method Summary
 int append(BytesRef bytes)
          Appends a copy of the given BytesRef to this BytesRefArray.
 void clear()
          Clears this BytesRefArray
 BytesRef get(BytesRef spare, int index)
          Returns the n'th element of this BytesRefArray
 BytesRefIterator iterator()
          sugar for iterator(Comparator) with a null comparator
 BytesRefIterator iterator(Comparator<BytesRef> comp)
           Returns a BytesRefIterator with point in time semantics.
 int size()
          Returns the current size of this BytesRefArray
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BytesRefArray

public BytesRefArray(Counter bytesUsed)
Creates a new BytesRefArray with a counter to track allocated bytes

Method Detail

clear

public void clear()
Clears this BytesRefArray


append

public int append(BytesRef bytes)
Appends a copy of the given BytesRef to this BytesRefArray.

Parameters:
bytes - the bytes to append
Returns:
the index of the appended bytes

size

public int size()
Returns the current size of this BytesRefArray

Returns:
the current size of this BytesRefArray

get

public BytesRef get(BytesRef spare,
                    int index)
Returns the n'th element of this BytesRefArray

Parameters:
spare - a spare BytesRef instance
index - the elements index to retrieve
Returns:
the n'th element of this BytesRefArray

iterator

public BytesRefIterator iterator()
sugar for iterator(Comparator) with a null comparator


iterator

public BytesRefIterator iterator(Comparator<BytesRef> comp)

Returns a BytesRefIterator with point in time semantics. The iterator provides access to all so far appended BytesRef instances.

If a non null Comparator is provided the iterator will iterate the byte values in the order specified by the comparator. Otherwise the order is the same as the values were appended.

This is a non-destructive operation.



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