Lexi, for lexical, is a fast conversion library to and from lexical forms. Internally, Lexi uses code from Milo Yip's dtoa and itoa implementation for double and integer conversions, respectively, and adds type detection as well as other overloads for fast lexical conversions.
Table of Contents
- Fast integer formatting
- Fast double formatting based off the Grisu2 algorithm
- Overloads for enumerated types
Simply clone, configure with CMake, and build.
git clone https://github.com/Alexhuszagh/lexi.git
git submodule update --init
cd lexi/build
cmake .. -_DBUILD_TESTS=ON # "-DBUILD_FUZZ=ON" for fuzzing with Clang
make -j 5 # "msbuild lexi.sln" for MSVC
Lexi is continually built with the following compiler and compiler versions:
- Clang 3.8+
- GCC 5.3+
- MinGW 5.3.0 (MXE, MinGW, and MSYS2)
- Visual Studio 14 2015
- Visual Studio 15 2017
Milo Yip. for his fast-formatting and extraction algorithms.
All useful pull requests will be merged, provided that they do not add external dependencies and follow these guidelines.
- Preprocessor macros should be used sparingly.
- Code syntax should not depend on the preprocessor.
- Your code must be readable.
- Keep minimal definitions in the headers for compilation time.
MIT, see license.