Skip to content

c-yaml

  • https://github.com/standardloop/c-yaml

GitHub Release Platform: macOS C Version

Implementation Goals

  • streaming lexer instead of reading of of a files contents into memory
  • don't fail on first syntax error, recover so can print multiple errors

Examples

  • TODO

Available Tasks

task: Available tasks for this project:
* list                  Lists all the tasks available to run.
* default               Builds and runs the test program.
* dependencies          Downloads C program dependencies.
* release               Release the dylib, used by GitHub actions.
* test:build            Builds the test program.
* test:run              Runs the test program.
* test:build-sanitize   Builds the test program with address sanitizers.
* test:run-sanitize     Runs the test program with address sanitizers.
* clean                 Cleans binary files.
* fmt                   Formats the C code with the `.clang-format` file.
* docs                  Generate docs/index.md and the task list in README.md
* test:leaks            Run macOS leaks on the test program.

Releasing

Releases are handled via GitHub Actions.

Docs

Docs are generated a first generated with doxygen as xml and then moxygen reads the xml to output markdown in the docs/ folder.

This repo uses reusable tasks from https://github.com/standardloop/taskfiles/

Precommit

This repo uses prek.

Please run prek install.