Package it.unimi.dsi.sux4j.mph
Class TwoStepsMWHCFunction.Builder<T>
java.lang.Object
it.unimi.dsi.sux4j.mph.TwoStepsMWHCFunction.Builder<T>
- Enclosing class:
- TwoStepsMWHCFunction<T>
A builder class for
TwoStepsMWHCFunction
.-
Field Summary
Modifier and TypeFieldDescriptionprotected boolean
Whetherbuild()
has already been called.protected ChunkedHashStore<T>
protected File
protected TransformationStrategy<? super T>
protected LongBigList
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionbuild()
Builds a new function.Specifies the keys of the function; if you have specified ait.unimi.dsi.sux4j.io.ChunkedHashStore
, it can benull
.store
(ChunkedHashStore<T> chunkedHashStore) Specifies a chunked hash store containing the keys associated with their rank.Specifies a temporary directory for theit.unimi.dsi.sux4j.io.ChunkedHashStore
.transform
(TransformationStrategy<? super T> transform) Specifies the transformation strategy for the keys of the function.values
(LongBigList values) Specifies the values assigned to the keys; the output width of the function will be the minimum width needed to represent all values.
-
Field Details
-
keys
-
transform
-
tempDir
-
chunkedHashStore
-
values
-
built
protected boolean builtWhetherbuild()
has already been called.
-
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
keys
Specifies the keys of the function; if you have specified ait.unimi.dsi.sux4j.io.ChunkedHashStore
, it can benull
.- Parameters:
keys
- the keys of the function.- Returns:
- this builder.
-
transform
Specifies the transformation strategy for the keys of the function.- Parameters:
transform
- a transformation strategy for the keys of the function.- Returns:
- this builder.
-
tempDir
Specifies a temporary directory for theit.unimi.dsi.sux4j.io.ChunkedHashStore
.- Parameters:
tempDir
- a temporary directory for theit.unimi.dsi.sux4j.io.ChunkedHashStore
files, ornull
for the standard temporary directory.- Returns:
- this builder.
-
store
Specifies a chunked hash store containing the keys associated with their rank.Warning: during the construction phase, a filter will be set on the specified
ChunkedHashStore
. You will have to reset it to its previous state.- Parameters:
chunkedHashStore
- a chunked hash store containing the keys associated with their rank, ornull
; the store can be unchecked, but in this case you must specify keys and a transform (otherwise, in case of a hash collision in the store anIllegalStateException
will be thrown).- Returns:
- this builder.
-
values
Specifies the values assigned to the keys; the output width of the function will be the minimum width needed to represent all values.- Parameters:
values
- values to be assigned to each element, in the same order of the keys.- Returns:
- this builder.
-
build
Builds a new function.- Returns:
- an
MWHCFunction
instance with the specified parameters. - Throws:
IllegalStateException
- if called more than once.IOException
-