我正在尝试使用 C 和 libyaml 编写 yaml 格式的配置文件解析器。我的互联网搜索并没有给我带来任何运气,找到一个像样的、完整的 API 文档和操作手册。Andrew Poelstra 的教程没有描述基于文档的[使用]解析方法,在我看来,这种方法比基于标记和基于事件的方法更具逻辑性和合理性。yaml_parser_load ()
因此,目前我坚持使用yaml.h中 doxygen 生成的文档,这确实让我对将文档加载到解析器后如何实际解析某些内容感到困惑。具体来说,我不知道我们在和结构的定义中谈论哪个堆栈。yaml_document_syaml_node_s
一个例子来自yaml_node_s.data.mapping:
struct {
/** The stack of mapping pairs (key, value). */
struct {
/** The beginning of the stack. */
yaml_node_pair_t *start;
/** The end of the stack. */
yaml_node_pair_t *end;
/** The top of the stack. */
yaml_node_pair_t *top;
} pairs;
/** The mapping style. */
yaml_mapping_style_t style;
} mapping;
Run Code Online (Sandbox Code Playgroud)
我发现 …