YAMLabstractParse and generate YAML documents.
The same value mapping as JSON (mapping → Map, sequence → List, plus the scalars), and YAML has a native null, so nil round-trips. Numbers beyond the 64-bit range and any BigDecimal serialize as strings.
YAML.parse:'a: 1' "* -> #{'a': 1} YAML.generate:#{'a': 1} "* -> 'a: 1\n'
Generate the YAML document for a value (any top-level value is allowed, unlike TOML). Serializable types match JSON.generate:, with nil allowed — YAML has a native null.
YAML.generate:#{'name': 'quoin' 'tags': #('vm' 'lang')} "* -> 'name: quoin\ntags:\n- vm\n- lang\n'
Parse a YAML document into Quoin values — mapping → Map, sequence → List, plus String / Integer / Double / Boolean / nil. Malformed input throws a ParseError.
(YAML.parse:'servers:\n - web\n - db').s "* -> #{'servers': #('web' 'db')}