yamlesque_2.10

Simple YAML parsing.

License

License

Categories

Categories

CRaSH General Purpose Libraries Utility
GroupId

GroupId

io.crashbox
ArtifactId

ArtifactId

yamlesque_2.10
Last Version

Last Version

0.2.0
Release Date

Release Date

Type

Type

jar
Description

Description

yamlesque_2.10
Simple YAML parsing.
Project URL

Project URL

https://github.com/jodersky/yamlesque
Source Code Management

Source Code Management

https://github.com/jodersky/yamlesque

Download yamlesque_2.10

How to add to project

<!-- https://jarcasting.com/artifacts/io.crashbox/yamlesque_2.10/ -->
<dependency>
    <groupId>io.crashbox</groupId>
    <artifactId>yamlesque_2.10</artifactId>
    <version>0.2.0</version>
</dependency>
// https://jarcasting.com/artifacts/io.crashbox/yamlesque_2.10/
implementation 'io.crashbox:yamlesque_2.10:0.2.0'
// https://jarcasting.com/artifacts/io.crashbox/yamlesque_2.10/
implementation ("io.crashbox:yamlesque_2.10:0.2.0")
'io.crashbox:yamlesque_2.10:jar:0.2.0'
<dependency org="io.crashbox" name="yamlesque_2.10" rev="0.2.0">
  <artifact name="yamlesque_2.10" type="jar" />
</dependency>
@Grapes(
@Grab(group='io.crashbox', module='yamlesque_2.10', version='0.2.0')
)
libraryDependencies += "io.crashbox" % "yamlesque_2.10" % "0.2.0"
[io.crashbox/yamlesque_2.10 "0.2.0"]

Dependencies

There are no dependencies for this project. It is a standalone project that does not depend on any other jars.

Project Modules

There are no modules declared in this project.

Build Status

yamlesque

Pure Scala YAML parsing.

As the name suggests, "yam-el-esque" is a Scala implementation of the most frequently used YAML features. It takes inspiration from Spray-JSON and aims to provide an idiomatic API that is cross-platform and has a minimal set of dependencies.

Getting Started

Include yamlesque into a project. In sbt, this can be done with:

libraryDependencies += "io.crashbox" %% "yamlesque" % "<latest_tag>"

Parse some YAML

import yamlesque._

val text = s"""|name: yamlesque
               |description: a YAML library for scala
               |authors:
               |  - name: Jakob Odersky
               |    id: jodersky
               |  - name: Another
               |""".stripMargin

// parse yaml to a type safe representation
val yaml = text.parseYaml

Integration with Spray-JSON

TODO

Integration with Akka-HTTP

TODO

YAML Conformance

Yamlesque does not strictly implement all features as defined in YAML 1.2, however support should be sufficient for most regular documents. Pull requests with additional feature implementations are always welcome!

The current feature restrictions are:

  • always assumes utf-8 is used
  • anchors and references are not supported
  • tags are not supported
  • flow-styles (aka inline JSON) aren't supported
  • only single-line literals are allowed (no > or | blocks)

Versions

Version
0.2.0