org.apache.lucene.util
Class IntsRef

java.lang.Object
  extended by org.apache.lucene.util.IntsRef
All Implemented Interfaces:
Cloneable, Comparable<IntsRef>

public final class IntsRef
extends Object
implements Comparable<IntsRef>, Cloneable

Represents int[], as a slice (offset + length) into an existing int[]. The ints member should never be null; use EMPTY_INTS if necessary.

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

Field Summary
static int[] EMPTY_INTS
          An empty integer array for convenience
 int[] ints
          The contents of the IntsRef.
 int length
          Length of used ints.
 int offset
          Offset of first valid integer.
 
Constructor Summary
IntsRef()
          Create a IntsRef with EMPTY_INTS
IntsRef(int capacity)
          Create a IntsRef pointing to a new array of size capacity.
IntsRef(int[] ints, int offset, int length)
          This instance will directly reference ints w/o making a copy.
 
Method Summary
 IntsRef clone()
           
 int compareTo(IntsRef other)
          Signed int order comparison
 void copyInts(IntsRef other)
           
static IntsRef deepCopyOf(IntsRef other)
          Creates a new IntsRef that points to a copy of the ints from other
 boolean equals(Object other)
           
 void grow(int newLength)
          Used to grow the reference array.
 int hashCode()
           
 boolean intsEquals(IntsRef other)
           
 boolean isValid()
          Performs internal consistency checks.
 String toString()
           
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

EMPTY_INTS

public static final int[] EMPTY_INTS
An empty integer array for convenience


ints

public int[] ints
The contents of the IntsRef. Should never be null.


offset

public int offset
Offset of first valid integer.


length

public int length
Length of used ints.

Constructor Detail

IntsRef

public IntsRef()
Create a IntsRef with EMPTY_INTS


IntsRef

public IntsRef(int capacity)
Create a IntsRef pointing to a new array of size capacity. Offset and length will both be zero.


IntsRef

public IntsRef(int[] ints,
               int offset,
               int length)
This instance will directly reference ints w/o making a copy. ints should not be null.

Method Detail

clone

public IntsRef clone()
Overrides:
clone in class Object

hashCode

public int hashCode()
Overrides:
hashCode in class Object

equals

public boolean equals(Object other)
Overrides:
equals in class Object

intsEquals

public boolean intsEquals(IntsRef other)

compareTo

public int compareTo(IntsRef other)
Signed int order comparison

Specified by:
compareTo in interface Comparable<IntsRef>

copyInts

public void copyInts(IntsRef other)

grow

public void grow(int newLength)
Used to grow the reference array. In general this should not be used as it does not take the offset into account.

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

toString

public String toString()
Overrides:
toString in class Object

deepCopyOf

public static IntsRef deepCopyOf(IntsRef other)
Creates a new IntsRef that points to a copy of the ints from other

The returned IntsRef will have a length of other.length and an offset of zero.


isValid

public boolean isValid()
Performs internal consistency checks. Always returns true (or throws IllegalStateException)



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