1
0
Fork
You've already forked ckdl
0
Fork of ckdl for some improvements I need for wyverntail.
  • C 73.6%
  • C++ 9.8%
  • Cython 8.5%
  • CMake 5.1%
  • Python 3%
2026年07月09日 17:07:07 +01:00
.github/workflows Skip free-threaded python 2025年11月07日 20:54:42 +01:00
bindings Get rid of char8_t and std::u8string 2026年07月09日 17:07:07 +01:00
doc Get rid of char8_t and std::u8string 2026年07月09日 17:07:07 +01:00
include/kdl Get rid of char8_t and std::u8string 2026年07月09日 17:07:07 +01:00
src I may be stupid (indent fix) 2026年04月27日 09:42:35 +01:00
tests Add Document::to_std_string 2026年04月22日 17:00:11 +01:00
.clang-format add .clang-format 2023年10月03日 14:11:38 +02:00
.gitignore Add sphinx docs 2022年09月13日 23:51:07 +02:00
.readthedocs.yaml Remove unnecessary comments from .readthedocs.yaml 2023年10月03日 17:31:14 +02:00
CHANGELOG.md prepare CHANGELOG for 1.0 2024年12月21日 20:25:20 +01:00
CMakeLists.txt make kdl-utf8 an OBJECT target 2025年01月11日 15:41:49 +01:00
COPYING Just copy the test cases, downloading them from GH every time was silly 2024年05月26日 12:51:38 +02:00
pyproject.toml Add Python tests 2022年09月16日 21:39:00 +02:00
README.md Make KDL 2.0.0 the default ( #9 ) 2024年12月21日 19:31:14 +01:00
setup.py add missing line to Python README 2024年12月21日 20:53:17 +01:00

ckdl - KDL reading and writing for C, Python, C++

ckdl is a C (C11) library that implements reading and writing the KDL Document Language.

ckdl provides a simple "streaming" API, inspired by SAX, instead of reading the entire document into a data structure. While this may be inconvenient to work with directly for most applications, the idea is to enable bindings for different languages which can then read the document into a suitable data structure relatively directly.

This repository currently contains language bindings for:

  • Python
  • C++20

The C and C++ parts are built with CMake.

To install the Python bindings, run

pip install ckdl

For more details about how to build and use ckdl, check out the documentation on RTD or under doc/ in this repository.

Status

ckdl has full support for KDL 2.0.0 and KDL 1.0.0. The parser passes the upstream test suite.

By default, the parser will allow documents of either KDL version. You can restrict the parser to one version or the other using parse options.