core: Allow non-string hash keys.

This merely allows adding non-string keys to a hash table and puts them
non-string keys in bucket 0.  Efficiency is lost.  TODO: calculate a
proper hash.

* src/hash.c (hash_): Allow non-string keys in bucket 0.
This commit is contained in:
Jan Nieuwenhuizen 2019-11-13 08:16:04 +01:00 committed by Jan (janneke) Nieuwenhuizen
parent 6d8b4c989a
commit 6d380c4cb5
No known key found for this signature in database
GPG Key ID: F3C1A0D9C1D65273
1 changed files with 3 additions and 7 deletions

View File

@ -46,13 +46,9 @@ hashq_ (struct scm *x, long size)
int int
hash_ (struct scm *x, long size) hash_ (struct scm *x, long size)
{ {
if (x->type != TSTRING) if (x->type == TSTRING)
{ return hash_cstring (cell_bytes (x->string), size);
eputs ("hash_ failed, not a string:"); return 0;
display_error_ (x);
assert_msg (0, "0");
}
return hash_cstring (cell_bytes (x->string), size);
} }
struct scm * struct scm *