public static class CrossHash.Curlup
extends java.lang.Object
Arrays.hashCode(int[])
. This passes SMHasher for at least 64-bit
output. Has a lot of predefined functors (192, named after 24 Greek letters and 72 Goetic demons, see
Wikipedia for the demons,
in both lower case and lower case with a trailing underscore). You probably want to use predefined
instead of wrangling demon names; you can always choose an element from predefined with a 7-bit number, and there
are 64 numbers outside that range so you can choose any of those when a functor must be different.
Constructor and Description |
---|
Curlup() |
Curlup(java.lang.CharSequence seed) |
Curlup(long seed) |
Modifier and Type | Method and Description |
---|---|
int |
hash(boolean[] data) |
int |
hash(byte[] data) |
int |
hash(char[] data) |
int |
hash(char[][] data) |
int |
hash(char[] data,
int start,
int end)
Hashes only a subsection of the given data, starting at start (inclusive) and ending before end (exclusive).
|
int |
hash(java.lang.CharSequence data) |
int |
hash(java.lang.CharSequence[]... data) |
int |
hash(java.lang.CharSequence[] data) |
int |
hash(java.lang.CharSequence data,
int start,
int end)
Hashes only a subsection of the given data, starting at start (inclusive) and ending before end (exclusive).
|
int |
hash(double[] data) |
int |
hash(float[] data) |
int |
hash(int[] data) |
int |
hash(int[][] data) |
int |
hash(int[] data,
int length) |
int |
hash(java.lang.Iterable<? extends java.lang.CharSequence> data) |
int |
hash(java.util.List<? extends java.lang.CharSequence> data) |
int |
hash(long[] data) |
int |
hash(long[][] data) |
static int |
hash(long seed,
boolean[] data) |
static int |
hash(long seed,
byte[] data) |
static int |
hash(long seed,
char[] data) |
static int |
hash(long seed,
char[][] data) |
static int |
hash(long seed,
char[] data,
int start,
int end)
Hashes only a subsection of the given data, starting at start (inclusive) and ending before end (exclusive).
|
static int |
hash(long seed,
java.lang.CharSequence data) |
static int |
hash(long seed,
java.lang.CharSequence[]... data) |
static int |
hash(long seed,
java.lang.CharSequence[] data) |
static int |
hash(long seed,
java.lang.CharSequence data,
int start,
int end)
Hashes only a subsection of the given data, starting at start (inclusive) and ending before end (exclusive).
|
static int |
hash(long seed,
double[] data) |
static int |
hash(long seed,
float[] data) |
static int |
hash(long seed,
int[] data) |
static int |
hash(long seed,
int[][] data) |
static int |
hash(long seed,
int[] data,
int length) |
static int |
hash(long seed,
java.lang.Iterable<? extends java.lang.CharSequence> data) |
static int |
hash(long seed,
java.util.List<? extends java.lang.CharSequence> data) |
static int |
hash(long seed,
long[] data) |
static int |
hash(long seed,
long[][] data) |
static int |
hash(long seed,
java.lang.Object data) |
static int |
hash(long seed,
java.lang.Object[] data) |
static int |
hash(long seed,
short[] data) |
int |
hash(java.lang.Object data) |
int |
hash(java.lang.Object[] data) |
int |
hash(short[] data) |
long |
hash64(boolean[] data) |
long |
hash64(byte[] data) |
long |
hash64(char[] data) |
long |
hash64(char[][] data) |
long |
hash64(char[] data,
int start,
int end)
Hashes only a subsection of the given data, starting at start (inclusive) and ending before end (exclusive).
|
long |
hash64(java.lang.CharSequence data) |
long |
hash64(java.lang.CharSequence[]... data) |
long |
hash64(java.lang.CharSequence[] data) |
long |
hash64(java.lang.CharSequence data,
int start,
int end)
Hashes only a subsection of the given data, starting at start (inclusive) and ending before end (exclusive).
|
long |
hash64(double[] data) |
long |
hash64(float[] data) |
long |
hash64(int[] data) |
long |
hash64(int[][] data) |
long |
hash64(int[] data,
int length) |
long |
hash64(java.lang.Iterable<? extends java.lang.CharSequence> data) |
long |
hash64(java.util.List<? extends java.lang.CharSequence> data) |
long |
hash64(long[] data) |
long |
hash64(long[][] data) |
static long |
hash64(long seed,
boolean[] data) |
static long |
hash64(long seed,
byte[] data) |
static long |
hash64(long seed,
char[] data) |
static long |
hash64(long seed,
char[][] data) |
static long |
hash64(long seed,
char[] data,
int start,
int end)
Hashes only a subsection of the given data, starting at start (inclusive) and ending before end (exclusive).
|
static long |
hash64(long seed,
java.lang.CharSequence data) |
static long |
hash64(long seed,
java.lang.CharSequence[]... data) |
static long |
hash64(long seed,
java.lang.CharSequence[] data) |
static long |
hash64(long seed,
java.lang.CharSequence data,
int start,
int end)
Hashes only a subsection of the given data, starting at start (inclusive) and ending before end (exclusive).
|
static long |
hash64(long seed,
double[] data) |
static long |
hash64(long seed,
float[] data) |
static long |
hash64(long seed,
int[] data) |
static long |
hash64(long seed,
int[][] data) |
static long |
hash64(long seed,
int[] data,
int length) |
static long |
hash64(long seed,
java.lang.Iterable<? extends java.lang.CharSequence> data) |
static long |
hash64(long seed,
java.util.List<? extends java.lang.CharSequence> data) |
static long |
hash64(long seed,
long[] data) |
static long |
hash64(long seed,
long[][] data) |
static long |
hash64(long seed,
java.lang.Object data) |
static long |
hash64(long seed,
java.lang.Object[] data) |
static long |
hash64(long seed,
short[] data) |
long |
hash64(java.lang.Object data) |
long |
hash64(java.lang.Object[] data) |
long |
hash64(short[] data) |
static long |
randomize(long seed)
Very similar to Pelican and related unary hashes; uses "xor rotate xor rotate" as an early step to mix any
clustered bits all around the result, then the rest is like MurmurHash3's mixer.
|
public static final CrossHash.Curlup alpha
public static final CrossHash.Curlup beta
public static final CrossHash.Curlup gamma
public static final CrossHash.Curlup delta
public static final CrossHash.Curlup epsilon
public static final CrossHash.Curlup zeta
public static final CrossHash.Curlup eta
public static final CrossHash.Curlup theta
public static final CrossHash.Curlup iota
public static final CrossHash.Curlup kappa
public static final CrossHash.Curlup lambda
public static final CrossHash.Curlup mu
public static final CrossHash.Curlup nu
public static final CrossHash.Curlup xi
public static final CrossHash.Curlup omicron
public static final CrossHash.Curlup pi
public static final CrossHash.Curlup rho
public static final CrossHash.Curlup sigma
public static final CrossHash.Curlup tau
public static final CrossHash.Curlup upsilon
public static final CrossHash.Curlup phi
public static final CrossHash.Curlup chi
public static final CrossHash.Curlup psi
public static final CrossHash.Curlup omega
public static final CrossHash.Curlup alpha_
public static final CrossHash.Curlup beta_
public static final CrossHash.Curlup gamma_
public static final CrossHash.Curlup delta_
public static final CrossHash.Curlup epsilon_
public static final CrossHash.Curlup zeta_
public static final CrossHash.Curlup eta_
public static final CrossHash.Curlup theta_
public static final CrossHash.Curlup iota_
public static final CrossHash.Curlup kappa_
public static final CrossHash.Curlup lambda_
public static final CrossHash.Curlup mu_
public static final CrossHash.Curlup nu_
public static final CrossHash.Curlup xi_
public static final CrossHash.Curlup omicron_
public static final CrossHash.Curlup pi_
public static final CrossHash.Curlup rho_
public static final CrossHash.Curlup sigma_
public static final CrossHash.Curlup tau_
public static final CrossHash.Curlup upsilon_
public static final CrossHash.Curlup phi_
public static final CrossHash.Curlup chi_
public static final CrossHash.Curlup psi_
public static final CrossHash.Curlup omega_
public static final CrossHash.Curlup baal
public static final CrossHash.Curlup agares
public static final CrossHash.Curlup vassago
public static final CrossHash.Curlup samigina
public static final CrossHash.Curlup marbas
public static final CrossHash.Curlup valefor
public static final CrossHash.Curlup amon
public static final CrossHash.Curlup barbatos
public static final CrossHash.Curlup paimon
public static final CrossHash.Curlup buer
public static final CrossHash.Curlup gusion
public static final CrossHash.Curlup sitri
public static final CrossHash.Curlup beleth
public static final CrossHash.Curlup leraje
public static final CrossHash.Curlup eligos
public static final CrossHash.Curlup zepar
public static final CrossHash.Curlup botis
public static final CrossHash.Curlup bathin
public static final CrossHash.Curlup sallos
public static final CrossHash.Curlup purson
public static final CrossHash.Curlup marax
public static final CrossHash.Curlup ipos
public static final CrossHash.Curlup aim
public static final CrossHash.Curlup naberius
public static final CrossHash.Curlup glasya_labolas
public static final CrossHash.Curlup bune
public static final CrossHash.Curlup ronove
public static final CrossHash.Curlup berith
public static final CrossHash.Curlup astaroth
public static final CrossHash.Curlup forneus
public static final CrossHash.Curlup foras
public static final CrossHash.Curlup asmoday
public static final CrossHash.Curlup gaap
public static final CrossHash.Curlup furfur
public static final CrossHash.Curlup marchosias
public static final CrossHash.Curlup stolas
public static final CrossHash.Curlup phenex
public static final CrossHash.Curlup halphas
public static final CrossHash.Curlup malphas
public static final CrossHash.Curlup raum
public static final CrossHash.Curlup focalor
public static final CrossHash.Curlup vepar
public static final CrossHash.Curlup sabnock
public static final CrossHash.Curlup shax
public static final CrossHash.Curlup vine
public static final CrossHash.Curlup bifrons
public static final CrossHash.Curlup vual
public static final CrossHash.Curlup haagenti
public static final CrossHash.Curlup crocell
public static final CrossHash.Curlup furcas
public static final CrossHash.Curlup balam
public static final CrossHash.Curlup alloces
public static final CrossHash.Curlup caim
public static final CrossHash.Curlup murmur
public static final CrossHash.Curlup orobas
public static final CrossHash.Curlup gremory
public static final CrossHash.Curlup ose
public static final CrossHash.Curlup amy
public static final CrossHash.Curlup orias
public static final CrossHash.Curlup vapula
public static final CrossHash.Curlup zagan
public static final CrossHash.Curlup valac
public static final CrossHash.Curlup andras
public static final CrossHash.Curlup flauros
public static final CrossHash.Curlup andrealphus
public static final CrossHash.Curlup kimaris
public static final CrossHash.Curlup amdusias
public static final CrossHash.Curlup belial
public static final CrossHash.Curlup decarabia
public static final CrossHash.Curlup seere
public static final CrossHash.Curlup dantalion
public static final CrossHash.Curlup andromalius
public static final CrossHash.Curlup baal_
public static final CrossHash.Curlup agares_
public static final CrossHash.Curlup vassago_
public static final CrossHash.Curlup samigina_
public static final CrossHash.Curlup marbas_
public static final CrossHash.Curlup valefor_
public static final CrossHash.Curlup amon_
public static final CrossHash.Curlup barbatos_
public static final CrossHash.Curlup paimon_
public static final CrossHash.Curlup buer_
public static final CrossHash.Curlup gusion_
public static final CrossHash.Curlup sitri_
public static final CrossHash.Curlup beleth_
public static final CrossHash.Curlup leraje_
public static final CrossHash.Curlup eligos_
public static final CrossHash.Curlup zepar_
public static final CrossHash.Curlup botis_
public static final CrossHash.Curlup bathin_
public static final CrossHash.Curlup sallos_
public static final CrossHash.Curlup purson_
public static final CrossHash.Curlup marax_
public static final CrossHash.Curlup ipos_
public static final CrossHash.Curlup aim_
public static final CrossHash.Curlup naberius_
public static final CrossHash.Curlup glasya_labolas_
public static final CrossHash.Curlup bune_
public static final CrossHash.Curlup ronove_
public static final CrossHash.Curlup berith_
public static final CrossHash.Curlup astaroth_
public static final CrossHash.Curlup forneus_
public static final CrossHash.Curlup foras_
public static final CrossHash.Curlup asmoday_
public static final CrossHash.Curlup gaap_
public static final CrossHash.Curlup furfur_
public static final CrossHash.Curlup marchosias_
public static final CrossHash.Curlup stolas_
public static final CrossHash.Curlup phenex_
public static final CrossHash.Curlup halphas_
public static final CrossHash.Curlup malphas_
public static final CrossHash.Curlup raum_
public static final CrossHash.Curlup focalor_
public static final CrossHash.Curlup vepar_
public static final CrossHash.Curlup sabnock_
public static final CrossHash.Curlup shax_
public static final CrossHash.Curlup vine_
public static final CrossHash.Curlup bifrons_
public static final CrossHash.Curlup vual_
public static final CrossHash.Curlup haagenti_
public static final CrossHash.Curlup crocell_
public static final CrossHash.Curlup furcas_
public static final CrossHash.Curlup balam_
public static final CrossHash.Curlup alloces_
public static final CrossHash.Curlup caim_
public static final CrossHash.Curlup murmur_
public static final CrossHash.Curlup orobas_
public static final CrossHash.Curlup gremory_
public static final CrossHash.Curlup ose_
public static final CrossHash.Curlup amy_
public static final CrossHash.Curlup orias_
public static final CrossHash.Curlup vapula_
public static final CrossHash.Curlup zagan_
public static final CrossHash.Curlup valac_
public static final CrossHash.Curlup andras_
public static final CrossHash.Curlup flauros_
public static final CrossHash.Curlup andrealphus_
public static final CrossHash.Curlup kimaris_
public static final CrossHash.Curlup amdusias_
public static final CrossHash.Curlup belial_
public static final CrossHash.Curlup decarabia_
public static final CrossHash.Curlup seere_
public static final CrossHash.Curlup dantalion_
public static final CrossHash.Curlup andromalius_
public static final CrossHash.Curlup[] predefined
public Curlup()
public Curlup(long seed)
public Curlup(java.lang.CharSequence seed)
public static long randomize(long seed)
seed
- any long; there is no fix point at 0public long hash64(boolean[] data)
public long hash64(byte[] data)
public long hash64(short[] data)
public long hash64(char[] data)
public long hash64(java.lang.CharSequence data)
public long hash64(int[] data)
public long hash64(int[] data, int length)
public long hash64(long[] data)
public long hash64(float[] data)
public long hash64(double[] data)
public long hash64(char[] data, int start, int end)
data
- the char array to hashstart
- the start of the section to hash (inclusive)end
- the end of the section to hash (exclusive)public long hash64(java.lang.CharSequence data, int start, int end)
data
- the String or other CharSequence to hashstart
- the start of the section to hash (inclusive)end
- the end of the section to hash (exclusive)public long hash64(char[][] data)
public long hash64(int[][] data)
public long hash64(long[][] data)
public long hash64(java.lang.CharSequence[] data)
public long hash64(java.lang.CharSequence[]... data)
public long hash64(java.lang.Iterable<? extends java.lang.CharSequence> data)
public long hash64(java.util.List<? extends java.lang.CharSequence> data)
public long hash64(java.lang.Object[] data)
public long hash64(java.lang.Object data)
public int hash(boolean[] data)
public int hash(byte[] data)
public int hash(short[] data)
public int hash(char[] data)
public int hash(java.lang.CharSequence data)
public int hash(int[] data)
public int hash(int[] data, int length)
public int hash(long[] data)
public int hash(float[] data)
public int hash(double[] data)
public int hash(char[] data, int start, int end)
data
- the char array to hashstart
- the start of the section to hash (inclusive)end
- the end of the section to hash (exclusive)public int hash(java.lang.CharSequence data, int start, int end)
data
- the String or other CharSequence to hashstart
- the start of the section to hash (inclusive)end
- the end of the section to hash (exclusive)public int hash(char[][] data)
public int hash(int[][] data)
public int hash(long[][] data)
public int hash(java.lang.CharSequence[] data)
public int hash(java.lang.CharSequence[]... data)
public int hash(java.lang.Iterable<? extends java.lang.CharSequence> data)
public int hash(java.util.List<? extends java.lang.CharSequence> data)
public int hash(java.lang.Object[] data)
public int hash(java.lang.Object data)
public static long hash64(long seed, boolean[] data)
public static long hash64(long seed, byte[] data)
public static long hash64(long seed, short[] data)
public static long hash64(long seed, char[] data)
public static long hash64(long seed, java.lang.CharSequence data)
public static long hash64(long seed, int[] data)
public static long hash64(long seed, int[] data, int length)
public static long hash64(long seed, long[] data)
public static long hash64(long seed, float[] data)
public static long hash64(long seed, double[] data)
public static long hash64(long seed, char[] data, int start, int end)
data
- the char array to hashstart
- the start of the section to hash (inclusive)end
- the end of the section to hash (exclusive)public static long hash64(long seed, java.lang.CharSequence data, int start, int end)
data
- the String or other CharSequence to hashstart
- the start of the section to hash (inclusive)end
- the end of the section to hash (exclusive)public static long hash64(long seed, char[][] data)
public static long hash64(long seed, int[][] data)
public static long hash64(long seed, long[][] data)
public static long hash64(long seed, java.lang.CharSequence[] data)
public static long hash64(long seed, java.lang.CharSequence[]... data)
public static long hash64(long seed, java.lang.Iterable<? extends java.lang.CharSequence> data)
public static long hash64(long seed, java.util.List<? extends java.lang.CharSequence> data)
public static long hash64(long seed, java.lang.Object[] data)
public static long hash64(long seed, java.lang.Object data)
public static int hash(long seed, boolean[] data)
public static int hash(long seed, byte[] data)
public static int hash(long seed, short[] data)
public static int hash(long seed, char[] data)
public static int hash(long seed, java.lang.CharSequence data)
public static int hash(long seed, int[] data)
public static int hash(long seed, int[] data, int length)
public static int hash(long seed, long[] data)
public static int hash(long seed, float[] data)
public static int hash(long seed, double[] data)
public static int hash(long seed, char[] data, int start, int end)
data
- the char array to hashstart
- the start of the section to hash (inclusive)end
- the end of the section to hash (exclusive)public static int hash(long seed, java.lang.CharSequence data, int start, int end)
data
- the String or other CharSequence to hashstart
- the start of the section to hash (inclusive)end
- the end of the section to hash (exclusive)public static int hash(long seed, char[][] data)
public static int hash(long seed, int[][] data)
public static int hash(long seed, long[][] data)
public static int hash(long seed, java.lang.CharSequence[] data)
public static int hash(long seed, java.lang.CharSequence[]... data)
public static int hash(long seed, java.lang.Iterable<? extends java.lang.CharSequence> data)
public static int hash(long seed, java.util.List<? extends java.lang.CharSequence> data)
public static int hash(long seed, java.lang.Object[] data)
public static int hash(long seed, java.lang.Object data)
Copyright © Eben Howard 2012–2022. All rights reserved.