跳到主要内容

yaml

简介

YAML官网: https://yaml.org/

CPP库: yaml-cpp

基本用法:

  1. 使用new_node新建实例
  2. 实例通过load或load_file加载yaml
  3. 使用dump查看加载的yaml内容
  4. 使用dump_file写到目标文件
  5. 使用get获取指定元素,并返回mixed
TODO
  1. set 方法 2. load_all 方法

组件接口

yaml.gs

函数原型函数作用
object new_node()新建节点实例,用于解析、操作yaml节点
object load(string input)新建节点实例,并加载string
object load_file(string path)新建节点实例,并加载文件

yaml_impl.gs

yaml实例

函数原型函数作用
void load(string input)加载yaml格式的输入
void load_file(string file_path)加载yaml文件
string dump()用string表示获取加载后的yaml内容
void dump_file(string file_path)将内存中的yaml写到指定文件
int node_type()根节点的类型
mixed get(...)获取节点内容

样例

// 加载string
void load_test()
{
object node = yaml.new_node();
node.load("[1,2,3]");
printf("Loaded: \n%s\n\n", node.dump());
}
// 加载文件
void load_file_test()
{
object node = yaml.load_file("/sample/sample.yaml");
printf("File loaded: \n%s\n\n", node.dump());
}
// 获取节点内容
void get_item_test()
{
object node = yaml.load_file("/sample/sample.yaml");
mixed rlt = node.get();
mixed item = node.get("name");
printf("Load %s:\n%O\n\n", item, rlt);
}