Decouple parser from CommitRequest

This commit is contained in:
2025-08-17 13:36:53 -04:00
parent db2285dfda
commit fa2a2e4427
10 changed files with 636 additions and 460 deletions

View File

@@ -84,7 +84,7 @@ add_custom_command(
add_custom_target(generate_json_tokens
DEPENDS ${CMAKE_BINARY_DIR}/json_tokens.cpp)
set(SOURCES src/main.cpp src/config.cpp src/commit_request.cpp
set(SOURCES src/main.cpp src/config.cpp src/json_commit_request_parser.cpp
src/arena_allocator.cpp ${CMAKE_BINARY_DIR}/json_tokens.cpp)
add_executable(weaseldb ${SOURCES})
@@ -105,8 +105,8 @@ target_include_directories(test_arena_allocator PRIVATE src)
add_executable(
test_commit_request
tests/test_commit_request.cpp src/commit_request.cpp src/arena_allocator.cpp
${CMAKE_BINARY_DIR}/json_tokens.cpp)
tests/test_commit_request.cpp src/json_commit_request_parser.cpp
src/arena_allocator.cpp ${CMAKE_BINARY_DIR}/json_tokens.cpp)
add_dependencies(test_commit_request generate_json_tokens)
target_link_libraries(test_commit_request doctest::doctest weaseljson test_data
simdutf::simdutf)
@@ -119,7 +119,7 @@ target_include_directories(bench_arena_allocator PRIVATE src)
add_executable(
bench_commit_request
benchmarks/bench_commit_request.cpp src/commit_request.cpp
benchmarks/bench_commit_request.cpp src/json_commit_request_parser.cpp
src/arena_allocator.cpp ${CMAKE_BINARY_DIR}/json_tokens.cpp)
add_dependencies(bench_commit_request generate_json_tokens)
target_link_libraries(bench_commit_request nanobench weaseljson test_data
@@ -128,7 +128,7 @@ target_include_directories(bench_commit_request PRIVATE src)
add_executable(
bench_parser_comparison
benchmarks/bench_parser_comparison.cpp src/commit_request.cpp
benchmarks/bench_parser_comparison.cpp src/json_commit_request_parser.cpp
src/arena_allocator.cpp ${CMAKE_BINARY_DIR}/json_tokens.cpp)
add_dependencies(bench_parser_comparison generate_json_tokens)
target_link_libraries(bench_parser_comparison nanobench weaseljson test_data
@@ -138,7 +138,7 @@ target_include_directories(bench_parser_comparison
# Debug tools
add_executable(
debug_arena tools/debug_arena.cpp src/commit_request.cpp
debug_arena tools/debug_arena.cpp src/json_commit_request_parser.cpp
src/arena_allocator.cpp ${CMAKE_BINARY_DIR}/json_tokens.cpp)
add_dependencies(debug_arena generate_json_tokens)
target_link_libraries(debug_arena weaseljson simdutf::simdutf)