## org.apache.lucene.util
Class LongsRef

    java.lang.Object
      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()` Returns a shallow clone of this instance (the underlying longs are not copied and will be shared by both the returned object and this object.
`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()

  Returns a shallow clone of this instance (the underlying longs are not copied and will be shared by both the returned object and this object.

  Overrides:
    `clone` in class `Object`
  See Also:
    `deepCopyOf(org.apache.lucene.util.LongsRef)`

### 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.