protocol

toml_protocol

TOML parser and generator protocol.

Availability:
logtalk_load(toml(loader))
Author: Paulo Moura
Version: 1:0:0
Date: 2026-04-09
Compilation flags:
static
Dependencies:
(none)
Remarks:
(none)
Inherited public predicates:
(none)

Public predicates

parse/2

Parses TOML content read from the given source (file(Path), stream(Stream), codes(Codes), chars(Chars), or atom(Atom)) into a ground term representing the parsed TOML document.

Compilation flags:
static
Template:
parse(Source,TOML)
Mode and number of proofs:
parse(++compound,--ground) - zero_or_one
Exceptions:
Source is a variable:
instantiation_error
Source is neither a variable nor a valid source:
domain_error(toml_source,Source)

generate/2

Generates TOML output using the representation specified in the first argument (file(Path), stream(Stream), codes(Codes), chars(Chars), or atom(Atom)) from the ground TOML term in the second argument.

Compilation flags:
static
Template:
generate(Sink,TOML)
Mode and number of proofs:
generate(++compound,+ground) - one_or_error
Exceptions:
Sink is a variable:
instantiation_error
TOML is a variable:
instantiation_error
TOML is not a valid TOML term:
domain_error(toml_term,TOML)
Sink cannot be generated:
domain_error(toml_sink,Sink)

Protected predicates

(none)

Private predicates

(none)

Operators

(none)