A YAML parser and emitter in D.
|Copyright||Copyright © 2017, LLC Cereris|
|Authors||LLC Cereris, Peter Kozhevnikov|
|Registered by||Peter Kozhevnikov|
To use this package, put the following dependency into your project's dependencies section:
yamld-d is an open source YAML parser and emitter library for the D programming. Based on D-YAML.
- Easy to use, high level API and detailed debugging messages.
- Detailed API documentation and tutorials.
- Code examples.
- Supports all YAML 1.1 constructs. All examples from the YAML 1.1 specification are parsed correctly.
- Reads from and writes from/to YAML files or in-memory buffers.
- UTF-8, UTF-16 and UTF-32 encodings are supported, both big and little endian (plain ASCII also works as it is a subset of UTF-8).
- Support for both block (Python-like, based on indentation) and flow (JSON-like, based on bracing) constructs.
- Support for YAML anchors and aliases.
- Support for default values in mappings.
- Support for custom tags (data types), and implicit tag resolution for custom scalar tags.
- All tags (data types) described at http://yaml.org/type/ are supported, with the exception of tag:yaml.org,2002:yaml, which is used to represent YAML code in YAML.
- Remembers YAML style information between loading and dumping if possible.
- Reuses input memory and uses slices to minimize memory allocations.
- There is no support for recursive data structures.