YAML implementation for Nim https://nimyaml.org
Go to file
Felix Krause 15f8995ae2 Actual fix for #40 2017-06-30 16:45:32 +02:00
bench Fixed a GC problem; improved bench & tojson 2016-09-30 19:35:43 +02:00
doc Testing Ground uses HTTPS now 2016-11-30 20:31:36 +01:00
server Added YamlParser.display() 2017-02-14 19:40:40 +01:00
test Added `+DOC ---` event output. Fixed parserTests 2017-02-14 22:06:48 +01:00
tools Added testSuiteEvents tool 2017-01-09 19:09:07 +01:00
yaml Actual fix for #40 2017-06-30 16:45:32 +02:00
.gitignore Updated tests to use yaml-test-suite repo url 2016-12-12 19:29:39 +01:00
.travis.yml Separated test suites for travis 2016-10-09 16:10:11 +02:00
CHANGELOG.md Version 0.10.0 2017-06-30 16:34:02 +02:00
README.md Version 0.10.0 2017-06-30 16:34:02 +02:00
config.nims Made token output conform to yaml test suite 2017-02-14 19:06:41 +01:00
copying.txt Added copyright 2015-12-28 22:22:51 +01:00
nimdoc.cfg Documentation update 2016-11-01 12:40:53 +01:00
yaml.nim doc link fixes 2016-10-01 15:19:42 +02:00
yaml.nimble Version 0.9.1 2017-03-29 17:27:09 +02:00

README.md

NimYAML - YAML implementation for Nim

Build Status

NimYAML is a pure Nim YAML implementation without any dependencies other than Nim's standard library. It enables you to serialize Nim objects to a YAML stream and back. It also provides a low-level event-based API, and a document object model which you do not want to use because serializing to native types is much more awesome.

Documentation, examples and an online demo are available here. Releases are available as tags in this repository and can be fetched via nimble:

nimble install yaml

Features that may come in the future

  • Serialization:
    • Support for more standard library types
    • Support for polymorphism
    • Support for generic objects
    • Support for transient fields (i.e. object fields that will not be (de-)serialized

Developers

nim tests # runs all tests
nim lexerTests # run lexer tests
nim parserTests # run parser tests (git-clones yaml-dev-kit)
nim serializationTests # runs serialization tests
nim quickstartTests # run tests for quickstart snippets from documentation
nim documentation # builds documentation to folder docout
nim server # builds the REST server used for the testing ground
nim bench # runs benchmarks, requires libyaml
nim clean # guess
nim build # build a library

NimYAML needs at least Nim 0.17.0 in order to compile. Version 0.9.1 is the last release to support 0.15.x and 0.16.0.

License

MIT