org.apache.lucene.util
Class LongsRef

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

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

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

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

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

Field Detail

EMPTY_LONGS

public static final long[] EMPTY_LONGS
An empty long array for convenience


longs

public long[] longs
The contents of the LongsRef. Should never be null.


offset

public int offset
Offset of first valid long.


length

public int length
Length of used longs.

Constructor Detail

LongsRef

public LongsRef()
Create a LongsRef with EMPTY_LONGS


LongsRef

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


LongsRef

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

Method Detail

clone

public LongsRef 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

longsEquals

public boolean longsEquals(LongsRef other)

compareTo

public int compareTo(LongsRef other)
Signed int order comparison

Specified by:
compareTo in interface Comparable<LongsRef>

copyLongs

public void copyLongs(LongsRef 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 LongsRef deepCopyOf(LongsRef other)
Creates a new IntsRef that points to a copy of the longs 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.