Add a projected row to the set.
Add a projected row to the set. If the set is over capacity after the insertion, grow the set and rehash all elements.
the row to be added
true
if the row was not present in the set, false
otherwise
Add projected columns from a row to the set.
Add projected columns from a row to the set. If the set is over capacity after the insertion, grow the set and rehash all elements.
The capacity of the set (i.e.
The capacity of the set (i.e. size of the underlying array).
Return true if this set contains the specified projected row.
Return true if this set contains the specified element.
Return the value at the specified position as a Row, filling into the given MutableRow.
Return the position of the element in the underlying array, or INVALID_POS if it is not found.
Rehash the set if it is overloaded.
Rehash the set if it is overloaded.
A parameter unused in the function, but to force the Scala compiler to specialize this method.
Callback invoked when we are allocating a new, larger array.
Callback invoked when we move the key from one position (in the old array) to a new position (in the new array).
(Changed in version 2.9.0) The behavior of scanRight
has changed. The previous behavior can be reproduced with scanRight.reverse.
Number of elements in the set.
Number of elements in the set.
(Changed in version 2.9.0) transpose
throws an IllegalArgumentException
if collections are not uniformly sized.
A simple, fast hash set optimized for non-null insertion-only use case, where keys are never removed.
The underlying implementation uses Scala compiler's specialization to generate optimized storage for two primitive types (Long and Int). It is much faster than Java's standard HashSet while incurring much less memory overhead. This can serve as building blocks for higher level data structures such as an optimized HashMap.
This MultiColumnOpenHashSet is designed to serve as building blocks for higher level data structures such as an optimized hash map. Compared with standard hash set implementations, this class provides its various callbacks interfaces (e.g. allocateFunc, moveFunc) and interfaces to retrieve the position of a key in the underlying array.
It uses quadratic probing with a power-of-2 hash table size, which is guaranteed to explore all spaces for each key (see http://en.wikipedia.org/wiki/Quadratic_probing).