ghc-HsYAML
Pure Haskell YAML 1.2 processor
'HsYAML' is a [YAML 1.2](http://yaml.org/spec/1.2/spec.html) processor, i.e. a library for parsing and serializing YAML documents. Features of 'HsYAML' include: * Pure Haskell implementation with small dependency footprint and emphasis on strict compliance with the [YAML 1.2 specification](http://yaml.org/spec/1.2/spec.html). * Direct decoding to native Haskell types via ('aeson'-inspired) typeclass-based API (see "Data.YAML"). * Allows round-tripping while preserving ordering, anchors, and comments at Event-level. * Support for constructing custom YAML node graph representation (including support for cyclic YAML data structures). * Support for the standard (untyped) /Failsafe/, (strict) /JSON/, and (flexible) /Core/ "schemas" providing implicit typing rules as defined in the YAML 1.2 specification (including support for user-defined custom schemas; see "Data.YAML.Schema"). * Support for emitting YAML using /Failsafe/, (strict) /JSON/, and (flexible) /Core/ "schemas" (including support for user-defined custom encoding schemas; see "Data.YAML.Schema"). * Event-based API resembling LibYAML's Event-based API (see "Data.YAML.Event"). * Low-level API access to lexical token-based scanner (see "Data.YAML.Token"). See also the<//hackage.haskell.org/package/HsYAML-aeson HsYAML-aeson>package which allows to decode and encode YAML by leveraging 'aeson''s 'FromJSON' and 'ToJSON' instances.
GPL-2.0-or-later