Package com.illumon.iris.db.v2.hashing
Interface ChunkHasher
- All Known Implementing Classes:
BooleanArrayChunkHasher
,BooleanChunkHasher
,ByteArrayChunkHasher
,ByteChunkHasher
,CharArrayChunkHasher
,CharChunkHasher
,DoubleArrayChunkHasher
,DoubleChunkHasher
,FloatArrayChunkHasher
,FloatChunkHasher
,IntArrayChunkHasher
,IntChunkHasher
,LongArrayChunkHasher
,LongChunkHasher
,ObjectArrayChunkHasher
,ObjectArrayChunkShallowHasher
,ObjectChunkHasher
,ShortArrayChunkHasher
,ShortChunkHasher
public interface ChunkHasher
-
Method Summary
Modifier and Type Method Description void
hashInitial(Chunk<Attributes.Values> values, WritableIntChunk<Attributes.HashCode> destination)
Called for the first (or only) hash value, sets the hash codes in destination corresponding to values.int
hashInitial(Object value)
Hash a boxed object.int
hashUpdate(int existing, Object value)
Update a hash for a boxed object.void
hashUpdate(Chunk<Attributes.Values> values, WritableIntChunk<Attributes.HashCode> destination)
Called for subsequent hash values, updates the hash codes in destination corresponding to values.static ChunkHasher
makeArrayHasher(Class<?> componentType)
static ChunkHasher
makeHasher(ChunkType chunkType, Class<?> columnType, Class<?> componentType)
static int
scrambleHash(int x)
-
Method Details
-
hashInitial
void hashInitial(Chunk<Attributes.Values> values, WritableIntChunk<Attributes.HashCode> destination)Called for the first (or only) hash value, sets the hash codes in destination corresponding to values.- Parameters:
values
- the values to hashdestination
- the chunk to write hash values into
-
hashUpdate
void hashUpdate(Chunk<Attributes.Values> values, WritableIntChunk<Attributes.HashCode> destination)Called for subsequent hash values, updates the hash codes in destination corresponding to values.- Parameters:
values
- the values to hashdestination
- the chunk to update hash values into
-
hashInitial
Hash a boxed object.- Parameters:
value
- the boxed object to hash- Returns:
- the hashcode, as if you called the chunked version of this function
-
hashUpdate
Update a hash for a boxed object.- Parameters:
existing
- the existing hashcodevalue
- the boxed object to add to the hash code- Returns:
- the hashcode, as if you called the chunked version of this function
-
makeHasher
-
makeArrayHasher
-
scrambleHash
static int scrambleHash(int x)
-