YAML文書¶
yamlcastはlibyamlの薄いラッパーを提供します。
document
は読み込まれたYAMLドキュメントを、 node
はYAMLドキュメント中の各ノードを示すクラスです。
-
class
document
¶ 読み込んだYAMLドキュメントを示します。 中身は、libyamlのdocument_t型へのポインタです。
-
type
ptr
¶ yamlcast::document
へのshared_ptrの別名です。
-
static ptr
parse_string
(const std::string &str)¶ 文字列をパースして、読み込まれたドキュメントを返します。
パラメタ str: パース対象の文字列を渡します。 戻り値: パースした結果を yamlcast::document
へのポインタで返します。例外 yamlcast::yaml_parse_exception: パースに失敗した場合に発生します。
-
static document::ptr
parse_file
(FILE *file)¶ フィアルを読み込んでパース市、読み込まれたドキュメントを返します。
パラメタ str: パース対象ファイルへのパスを渡します。 戻り値: パースした結果を yamlcast::document
へのポインタで返します。例外 yamlcast::yaml_parse_exception: パースに失敗した場合に発生します。
-
type
-
class
node
¶ yamlcast::document
中のノードを示します。 ノードには、スカラー、シーケンス、マッピングの3種類のタイプが有ります。-
yaml_node_type_t
type
() const¶ このノードの種類を示します。
-
scalar
as_scalar
() const¶ このノードをスカラーとして扱います。 ノードがスカラーでない時は例外が発生します。 ノードのタイプは、
yamlcast::node::type()
で確認できます。例外 yamlcast::yaml_bad_cast: ノードがスカラーでない時に発生します。
-
sequence
as_sequence
() const¶ このノードをシーケンスとして扱います。 ノードがシーケンスでない時は例外が発生します。 ノードのタイプは、
yamlcast::node::type()
で確認できます。例外 yamlcast::yaml_bad_cast: ノードがスカラーでない時に発生します。
-
mapping
as_mapping
() const¶ このノードをマッピングとして扱います。 ノードがマッピングでない時は例外が発生します。 ノードのタイプは、
yamlcast::node::type()
で確認できます。例外 yamlcast::yaml_bad_cast: ノードがスカラーでない時に発生します。
-
const yaml_mark_t &
start_mark
() const¶ このノードの入力データ中での開始位置を取得します。
-
const yaml_mark_t &
end_mark
() const¶ このノードの入力データ中での終了位置を取得します。
-
yaml_node_type_t
-
class
scalar
¶ スカラーのノードを示します。 スカラーは、値を内部では文字列として持っています。 数値やブール値へは、値を読んで変換をする必要があります。
-
bool
operator==
(const char *str) const¶
-
bool
operator==
(const std::string &str) const¶ スカラーの値が、与えられた文字列と一致するか調べます。
-
size_t
length
() const¶ スカラーの値の文字列の長さを取得します。
-
const char *
value
() const¶ スカラーの値の文字列へのポインタを取得します。
-
std::string
str
() const¶ スカラーの値の文字列を、
std::string
として取得します。
-
bool
-
class
sequence
¶ シーケンスのノードを示します。 シーケンスは内部に複数のノードを保持しています。
-
const_iterator
begin
() const¶ シーケンスの最初の要素へのイテレーターを取得します。
-
const_iterator
end
() const¶ シーケンスの最後の要素の次へのイテレーターを取得します。
-
std::size_t
size
() const¶ シーケンス中のノードの数を取得します。
-
const_iterator
-
class
mapping
¶ マッピングのノードを示します。 マッピングは内部にキーと値のノードを保持します。
-
const_iterator
begin
() const¶ マッピングの最初の要素へのイテレーターを取得します。
-
const_iterator
end
() const¶ マッピングの最後の要素の次へのイテレーターを取得します。
-
const_iterator
find
(const std::string &key) const¶ 指定された文字列をキーとして持つ要素を探して、そのイテレーターを返します。 見つからなかった時は、
end()
の値を返します。
-
std::size_t
count
(const std::string &key) const¶ 指定された文字列をキーとして持つ要素の数を返します。
-
const_iterator