zephyr/lib/hash/Kconfig.hash_func
Joshua Lilly 69966dd452 lib: hashmap: Move hash table files lib/hashmap
Moves the hashmap related files into their own directory

Signed-off-by: Joshua Lilly <jgl@fb.com>
2023-03-02 12:03:07 -05:00

47 lines
1.1 KiB
Plaintext

# Copyright (c) 2022 Meta
#
# SPDX-License-Identifier: Apache-2.0
menu "Hash Function Support"
config SYS_HASH_FUNC32
bool "Hash function support"
help
Enable this option to support hash functions.
if SYS_HASH_FUNC32
config SYS_HASH_FUNC32_DJB2
bool "Daniel J. Bernstein's hash function (djb2)"
config SYS_HASH_FUNC32_MURMUR3
bool "Murmur3 hash function"
choice SYS_HASH_FUNC32_CHOICE
prompt "Default system-wide 32-bit hash function"
default SYS_HASH_FUNC32_CHOICE_MURMUR3
help
The default system-wide 32-bit hash function is sys_hash32().
config SYS_HASH_FUNC32_CHOICE_DJB2
bool "Default 32-bit hash is djb2"
select SYS_HASH_FUNC32_DJB2
config SYS_HASH_FUNC32_CHOICE_MURMUR3
bool "Default 32-bit hash is Murmur3"
select SYS_HASH_FUNC32_MURMUR3
config SYS_HASH_FUNC32_CHOICE_IDENTITY
bool "Default 32-bit hash is the identity"
help
This is the naive identity hash function. It only works for strings
either 1, 2, 4, or 8 bytes in length and so is suitable for scalar
values such as keys in a Hashmap. It is implemented as a static
inline function.
endchoice # SYS_HASH_FUNC_CHOICE
endif # SYS_HASH_FUNC
endmenu