NimYAML/README.md

49 lines
1.6 KiB
Markdown
Raw Normal View History

2015-12-29 17:38:22 +00:00
# NimYAML - YAML implementation for Nim
2016-09-20 16:33:52 +00:00
[![Build Status](https://travis-ci.org/flyx/NimYAML.svg?branch=devel)](https://travis-ci.org/flyx/NimYAML)
2016-06-08 19:28:07 +00:00
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.
2015-12-29 17:38:22 +00:00
2016-06-08 19:28:07 +00:00
Documentation, examples and an online demo are available [here][1]. Releases are
available as tags in this repository and can be fetched via nimble:
nimble install yaml
## Features that may come in the future
2015-12-29 17:38:22 +00:00
* Serialization:
- Support for more standard library types
2016-06-08 19:28:07 +00:00
- Support for polymorphism
- Support for generic objects
- Support for transient fields (i.e. object fields that will not be
(de-)serialized
2015-12-29 17:38:22 +00:00
## Developers
```bash
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
```
2017-06-30 14:34:02 +00:00
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.
2015-12-29 17:38:22 +00:00
## License
2016-06-08 19:28:07 +00:00
[MIT][2]
[1]: http://flyx.github.io/NimYAML/
2017-06-30 14:34:02 +00:00
[2]: copying.txt