A YAML 1.1-compliant parser and emitter library for the D programming language, designed for ease of use and full feature support.
D:YAML is a YAML parser and emitter library for the D programming language, enabling developers to read, write, and manipulate YAML data with almost full compliance to the YAML 1.1 specification. It solves the problem of handling YAML files in D applications by providing a robust, feature-complete alternative to building custom parsers.
D programmers who need to work with YAML for configuration, data serialization, or interoperability with other systems that use YAML.
Developers choose D:YAML for its high-level API, comprehensive YAML 1.1 support, and memory-efficient design, offering a reliable and easy-to-integrate solution compared to manual parsing or less complete libraries.
YAML parser and emitter for the D programming language
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Parses all constructs from the specification, including block and flow styles, anchors, aliases, and custom tags, with all examples from the spec handled correctly.
Reuses input memory and uses slices to minimize allocations, optimizing performance for handling large or frequent YAML data.
Offers an easy-to-use interface with detailed debugging messages, comprehensive tutorials, and code examples for quick integration.
Remembers YAML style information between loading and dumping when possible, ensuring output consistency with input formatting.
Explicitly lacks support for recursive data structures in YAML, a limitation for complex nested data that the README admits with no plans to implement.
Exclusively supports UTF-8 encoding, making it unsuitable for systems using other text encodings like UTF-16 or legacy formats.
Admitted to be 'almost' compliant with YAML 1.1, with documented differences that could cause edge-case issues in strict parsing scenarios.