
yaml.pl -- Process YAML data
This module parses YAML serialized data into a Prolog term with
structure that is compatible with the JSON library. This library is a
wrapper around the C library libyaml. This library forms the basis of
the YAML support in several languages and thus guarantees compatibility
of our YAML support with other languages.
yaml_read(+Input, -DOM) is detnull and the booleans true and false. Other untagged
values are returned as a Prolog string. Tagged values are
returned as tag(Tag, String) which is processed by
yalm_tagged/3. This internal predicate calls the user hook
yaml:tagged/3 with the same arguments and, if the hook fails,
provides the following defaults:
!!binary converts the Base64 to a string of bytes.!!str explicitly keeps a string!!null translates "null" to null!!bool translates to true and false!!int translates to an integer!!float translates to a floattag(Tag, String)
yaml_write(+Out:stream, +DOM) is det
yaml_write(+Out:stream, +DOM, +Options) is detfalse.true.true. Use false for embedded documents.true, minimize the term by factoring out common
structures and use &anchor and *anchor. Factorization
is always used if DOM is a cyclic term.
tagged(+Tag, ?String, ?Value) is semidet[multifile]!!tag values to be decoded or
encoded.