Lines Matching refs:hash

15 /* entry in hash value chain */
18 HEK *hent_hek; /* hash key */
22 /* hash key -- defined separately for use as shared pointer */
24 U32 hek_hash; /* hash of key */
25 I32 hek_len; /* length of hash key */
26 char hek_key[1]; /* variable-length hash key */
27 /* the hash-key is \0-terminated */
32 /* hash structure: */
50 /* hash a key */
53 * (http://burtleburtle.net/bob/hash/doobs.html) */
60 * The "hash seed" feature was added in Perl 5.8.1 to perturb the results
63 * If USE_HASH_SEED is defined, hash randomisation is done by default
64 * If USE_HASH_SEED_EXPLICIT is defined, hash randomisation is done
76 #define PERL_HASH(hash,str,len) \
89 (hash) = (hash_PeRlHaSh + (hash_PeRlHaSh << 15)); \
94 #define PERL_HASH_INTERNAL(hash,str,len) \
107 (hash) = (hash_PeRlHaSh + (hash_PeRlHaSh << 15)); \
115 This flag, used in the length slot of hash entries and magic structures,
130 Returns the actual pointer stored in the key slot of the hash entry. The
142 Returns the value slot (type C<SV*>) stored in the hash entry.
145 Returns the computed hash stored in the hash entry.
148 Returns the key slot of the hash entry as a C<char*> value, doing any
153 variable. Remember though, that hash keys in perl are free to contain
155 the length of hash keys. This is very similar to the C<SvPV()> macro
159 Returns the key as an C<SV*>, or C<Nullsv> if the hash entry does not
164 C<SV*> if the hash entry contains only a C<char*> key.
174 /* these hash entry flags ride on hent_klen (for use only in magic/tied HVs) */
190 /* The number of placeholders in the enumerated-keys hash */
210 /* This is an optimisation flag. It won't be set if all hash keys have a 0
290 into all keys as hv_iternext has no access to the hash flags. At this
322 #define Perl_sharepvn(sv, len, hash) HEK_KEY(share_hek(sv, len, hash))
323 #define sharepvn(sv, len, hash) Perl_sharepvn(sv, len, hash)