ezpz is a C++20 parser combinator library that tries to make writing parsers as easy as possible. You can combine parsers, propagate output, write custom contexts, get decent error messages and most importantly opt-out, if you need to.
parse("Hello World!", "Hello "+any(alpha)+"!"+eoi);
- Tutorial: Read this as an example based overview of ezpz.
- Reference: Read this for more indepth information of concepts and techniques in ezpz.
- fmt
- C++20 (e.g. gcc 11.1)
- gtest/gmock
- rapidcheck (downloaded automatically by cmake)
ezpz is a header-only library, which means you do not have to build anything to start using this library. If you want to build the tests and examples anyway, you need to have cmake and make installed. Go into the project root directory. Then, run the following commands:
mkdir build
cd build
cmake ..
make