Skip to content

HuRuilizhen/config_loader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

config_loader

A simple C++ library for loading configuration from files. Unit tests and examples are provided.

Features

  • Load configuration from YAML file
  • Simple API: get(key) / getOrDefault(key, default)
  • Support for nested keys (e.g. server.port)
  • Thread-safe read access (std::shared_mutex)

Requirements

  • C++20 compatible compiler
  • CMake >= 3.15
  • (Optional) GoogleTest for unit tests

Building

Configuration

Option Default Description
ENABLE_TESTS OFF Build unit tests (requires GTest)
ENABLE_EXAMPLES OFF Build EXAMPLES
CMAKE_EXPORT_COMPILE_COMMANDS OFF Generate compile_commands.json for IDEs

Execution

# Default build
cmake -S . -B build
cmake --build build

# Build with tests + benchmarks
cmake -S . -B build -DENABLE_TESTS=ON -DENABLE_EXAMPLES=ON
cmake --build build

# Install
sudo cmake --install build

Runing Examples

cd ./build/bin && ./config_loader_example

Running Tests

cd ./build && ctest --output-on-failure

About

config loader written in cpp

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published