_ _ _ _
| | | | | | | |
| |__| | __ _ __| | ___ | | __ ___ _ __
| __ | / _` | / _` | / _ \ | |/ / / _ \ | '_ \
| | | | | (_| | | (_| | | (_) | | < | __/ | | | |
|_| |_| \__,_| \__,_| \___/ |_|\_\ \___| |_| |_|
Hadoken is Minimalist, Simple, Stupid, C++ Utility Library. Hadoken is designed to complement and enhanced missing feature inside the STL and Boost.
- Hadoken does not have any other mandatory dependency than STL and Boost
- Hadoken is header-only and designed to be embedded
- Hadoken follows STL/Boost code conventions
- Hadoken is under Boost License
- Random123 implementation of counter based random generator, high quality, crush resistant and faster than mersenne twister
- Abstract interface to allow runtime random generator selection, fully compatible with C++11 and Boost random distribution
- Variadic template one-line string concatenator
- Utility function for one line string concatenation
- Utility function for wildcard matching
- Utility function for template substitution ( mustache style, minimalist )
- Uri library
- Float equality / close to functions
- string to integral / float converters
- small_vector: Vector with small size optimization. In the spirit of LLVM small vector
- Partial C++17 Parallel STL implementation compatible with C++11
- spinlock: simple implementation
- latch: barrier with counter implementation
- C++ 20 Executors implementations
- Thread pool executor
- Single thread executor
- Simple, type-safe, callback based Finite State Machine (FSM) implementation
- Command line option parser
- Support sub-commands
- Support auto-help generation
- Sax style parsing
Hadoken is mainly header only, you can use one of this
1- include the hadoken/include/ directory in your project as submodule
2- run the following command to install it mkdir build pushd build cmake ../ make make install
Hadoken is free of charge and distributed under the Boost Software License 1.0