Awesome
Commata
Just another header-only C++17 CSV parser
For users
Commata's version numbers strictly comply to Semantic Versioning only since the major version one. With the major version zero, each pre-release version has been misapplied to indicate a bugfix release. So, for example, 0.2.4-bug1 came after 0.2.4, which is not an order that Semantic Versioning mandates.
For developers
Commata is written in C++17 and consists only of headers. All C++ codes in this repository shall compile and link with Microsoft Visual Studio 2019, 2022, GCC 7.3 and Clang 7.0.
This repository also contains a test of it in src_test
directory.
Tests are written on GoogleTest v1.15.2.
Commata employs CMake 3.13 or later to make the test.
You can build it as follows:
-
At the top directory of the repository, prepare GoogleTest and the tests for Commata with CMake into
build
directory:$ cmake -S . -B build -DCOMMATA_BUILD_TESTS=ON
You can also explicitly specify the geneator, the platform, the build type, and so on. For example:
$ cmake -S . -B build -GNinja -DCMAKE_BUILD_TYPE=Debug -DCOMMATA_BUILD_TESTS=ON
or
$ cmake -S . -B build -G "Visual Studio 17 2022" -A x64 -DCOMMATA_BUILD_TESTS=ON
-
Now you can make and execute the tests. All you have to do should be
cd build
,cmake --build .
, and thensrc_test/test_commata
. Or, with Microsoft Visual Studio, opencommata.sln
inbuild
directory, buildtest_commata
project, and run it.