Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,8 @@
"cassert": "cpp",
"csignal": "cpp",
"regex": "cpp",
"*.ipp": "cpp"
"*.ipp": "cpp",
"barrier": "cpp",
"text_encoding": "cpp"
},
}
5 changes: 5 additions & 0 deletions ArtNode.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@
#include <stdexcept>
#include <vector>

#include <atomic> // for concurrency

#include "Helper.h"

namespace ART {
Expand All @@ -51,6 +53,9 @@ struct ArtNode {
// compressed path (prefix)
uint8_t prefix[maxPrefixLength];

// version for concurrency
std::atomic<uint64_t> version{0};

ArtNode(int8_t type) : prefixLength(0), count(0), type(type) {}
};

Expand Down
8 changes: 6 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@ project(ART VERSION 1.0
DESCRIPTION "DISC fork of Adaptive Radix Tree"
LANGUAGES CXX)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)

# Default to Release only if no build type is set (and not a multi-config generator)
if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
Expand All @@ -23,4 +25,6 @@ set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g")
# Targets
add_executable(main main.cpp)
add_executable(insert_profiling insert_profiling.cpp)
add_executable(run run.cpp)
add_executable(run_bin run_bin.cpp)
add_executable(run_txt run_txt.cpp)
add_executable(run_cc concurrent/run_cc.cpp)
Loading