現在(2013/12/12)のyaml-cppの最新リビジョンを使用しています。
YAML::Load("")
との両方YAML::Load("---\n...")
が Null ノードになることに気付きました。つまり、前者YAML::Load("").Type() == YAML::NodeType::Null
に送信するとstd::ostream
空の文字列が出力されますが、後者はチルダ ( ~
) を出力します。
両方のノードが空の文字列を出力するようにします。どうすれば達成できますか?
を使用すると、チルダが文字列として解釈されることに気付いたので、そうしたいのですYAML::Load
。
この違いを示すコードを次に示します。
#include <yaml-cpp/yaml.h>
#include <iostream>
#include <cassert>
int main() {
YAML::Node node1 = YAML::Load("");
YAML::Node node2 = YAML::Load("---\n...");
assert (node1.Type() == YAML::NodeType::Null);
assert (node2.Type() == YAML::NodeType::Null);
std::cout << node1 << std::endl;
std::cout << node2 << std::endl;
}
/* OUTPUT:
~
*/