Description

A YAML parser and emitter in D.

Package Information

Version0.0.1 (2017-Mar-19)
Homepage https://github.com/LLC-CERERIS/yaml-d
Repository https://github.com/LLC-CERERIS/yaml-d
LicenseMIT
CopyrightCopyright © 2017, LLC Cereris
AuthorsLLC Cereris, Peter Kozhevnikov
Registered byPeter Kozhevnikov
Sub packages
yaml-d:test
Dependencies

tinyendian

Installation

To use this package, put the following dependency into your project's dependencies section:

dub.json
dub.sdl

Readme

yaml-d Build Status Version Downloads license

Intoduction

yamld-d is an open source YAML parser and emitter library for the D programming. Based on D-YAML.

Features

  • 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.

Available versions

0.0.1 ~master ~dev