Open-Addressing / Linear Probe Hashmap Implementation.
More...
Go to the source code of this file.
Open-Addressing / Linear Probe Hashmap Implementation.
- Note
- Enable with
CONFIG_SYS_HASH_MAP_OA_LP
◆ SYS_HASHMAP_OA_LP_DEFINE
| #define SYS_HASHMAP_OA_LP_DEFINE |
( |
| _name | ) |
|
Value:
static uint32_t sys_hash32(const void *str, size_t n)
System default 32-bit hash function.
Definition hash_function.h:125
#define SYS_HASHMAP_DEFAULT_LOAD_FACTOR
The default Hashmap load factor (in hundredths).
Definition hash_map.h:122
#define SYS_HASHMAP_CONFIG(_max_size, _load_factor)
Initializer for sys_hashmap_config.
Definition hash_map_api.h:214
#define SYS_HASHMAP_DEFAULT_ALLOCATOR
The default Hashmap allocator.
Definition hash_map.h:119
#define SYS_HASHMAP_OA_LP_DEFINE_ADVANCED(_name, _hash_func, _alloc_func,...)
Declare a Open Addressing Linear Probe Hashmap (advanced).
Definition hash_map_oa_lp.h:47
#define SIZE_MAX
Definition stdint.h:70
Declare a Open Addressing Linear Probe Hashmap.
Declare a Open Addressing Linear Probe Hashmap with default parameters.
- Parameters
-
| _name | Name of the Hashmap. |
◆ SYS_HASHMAP_OA_LP_DEFINE_ADVANCED
| #define SYS_HASHMAP_OA_LP_DEFINE_ADVANCED |
( |
| _name, |
|
|
| _hash_func, |
|
|
| _alloc_func, |
|
|
| ... ) |
Value:
#define SYS_HASHMAP_DEFINE_ADVANCED(_name, _api, _config_type, _data_type, _hash_func, _alloc_func,...)
Declare a Hashmap (advanced).
Definition hash_map.h:47
const struct sys_hashmap_api sys_hashmap_oa_lp_api
Generic Hashmap configuration.
Definition hash_map_api.h:197
Definition hash_map_oa_lp.h:27
Declare a Open Addressing Linear Probe Hashmap (advanced).
Declare a Open Addressing Linear Probe Hashmap with control over advanced parameters.
- Note
- The allocator
_alloc_func is used for allocating internal Hashmap entries and does not interact with any user-provided keys or values.
- Parameters
-
◆ SYS_HASHMAP_OA_LP_DEFINE_STATIC
| #define SYS_HASHMAP_OA_LP_DEFINE_STATIC |
( |
| _name | ) |
|
Value:
#define SYS_HASHMAP_OA_LP_DEFINE_STATIC_ADVANCED(_name, _hash_func, _alloc_func,...)
Declare a Open Addressing Linear Probe Hashmap (advanced).
Definition hash_map_oa_lp.h:64
Declare a Open Addressing Linear Probe Hashmap statically.
Declare a Open Addressing Linear Probe Hashmap statically with default parameters.
- Parameters
-
| _name | Name of the Hashmap. |
◆ SYS_HASHMAP_OA_LP_DEFINE_STATIC_ADVANCED
| #define SYS_HASHMAP_OA_LP_DEFINE_STATIC_ADVANCED |
( |
| _name, |
|
|
| _hash_func, |
|
|
| _alloc_func, |
|
|
| ... ) |
Value:
__VA_ARGS__)
#define SYS_HASHMAP_DEFINE_STATIC_ADVANCED(_name, _api, _config_type, _data_type, _hash_func, _alloc_func,...)
Declare a Hashmap statically (advanced).
Definition hash_map.h:75
Declare a Open Addressing Linear Probe Hashmap (advanced).
Declare a Open Addressing Linear Probe Hashmap with control over advanced parameters.
- Note
- The allocator
_alloc_func is used for allocating internal Hashmap entries and does not interact with any user-provided keys or values.
- Parameters
-
◆ sys_hashmap_oa_lp_api