diff options
author | Katharina Fey <kookie@spacekookie.de> | 2019-07-13 06:40:05 +0100 |
---|---|---|
committer | Katharina Fey <kookie@spacekookie.de> | 2019-07-13 06:47:21 +0100 |
commit | 9130e47b171c5182ffe6c14eb710fdcb73943de4 (patch) | |
tree | ca76fcc58130b53c794c99adc7658b3b51075639 /CMakeLists.txt | |
parent | d0cca976be6fb90f3724911c8a124bce56b3c5f9 (diff) |
Adding initial support for HASH nodes
This PR adds initial support for HASH data nodes in libbowl.
This allows a performant key-value store lookup in a node tree.
The hashing code implements the "murmur" hash, which has shown
good performance over at [`libcuckoo`]. Currently there is no
extended hashing strategy, which should definitely be changed.
[`libcuckoo`]: https://github.com/qaul/libcuckoo
(currently a collision will cause a recursive re-alloc)
Some of the type-level hacks also begs the question if a PAIR
data node might be warranted, even though it would break the
simple design around bowl->data.
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 5ab2f46..abe82d3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3,10 +3,11 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c11") set(CMAKE_BUILD_TYPE Debug) project(bowl) -add_library(bowl SHARED bowl.c +add_library(bowl SHARED array.c + bowl.c data.c - utils.c - array.c) + hash.c + utils.c) target_include_directories(bowl PUBLIC ".") @@ -15,4 +16,4 @@ add_executable(ex_tree examples/tree.c) target_link_libraries(ex_tree bowl) add_executable(ex_list examples/list.c) -target_link_libraries(ex_list bowl)
\ No newline at end of file +target_link_libraries(ex_list bowl) |