33件ヒット
[1-33件を表示]
(0.030秒)
検索結果
-
Psych
:: Nodes (18204.0) -
Psych が中間データとして利用している AST (Abstract Syntax Tree) に 関するモジュール。
...。
Psych.load によって YAML ドキュメントを Ruby オブジェクトに変換
するときには、一度中間的な AST に変換され、その AST が Ruby の
オブジェクトに変換されます。
逆向き、つまり Psych.dump で Ruby のオブジェクトを
YAML ドキュ......中間的な AST に変換してから
それを YAML ドキュメントに変換します。
YAML AST の各ノードのクラスはすべて Psych::Nodes の下にあります。
AST を手作業で構築して、visitor を使って AST を YAML ドキュメントや
Ruby のオブジェクト......カラを1つ持つリストの AST を構築しています。
# Create our nodes
stream = Psych::Nodes::Stream.new
doc = Psych::Nodes::Document.new
seq = Psych::Nodes::Sequence.new
scalar = Psych::Nodes::Scalar.new('foo')
# Build up our tree
stream.children << doc
doc.child... -
Psych
. parse(yaml , filename = nil) -> Psych :: Nodes :: Document (270.0) -
YAML ドキュメントをパースし、YAML の AST を返します。
...YAML ドキュメントをパースし、YAML の AST を返します。
入力に複数のドキュメントが含まれている場合は、先頭のものを AST に変換して
返します。
filename はパース中に発生した例外のメッセージに用います。
AST について......は Psych::Nodes を参照してください。
@param yaml YAML ドキュメント(文字列 or IO オブジェクト)
@param filename Psych::SyntaxError 発生時にファイル名として表示する文字列。
@raise Psych::SyntaxError YAMLドキュメントに文法エラーが発見され......たときに発生します
@see Psych.load
//emlist[例][ruby]{
Psych.parse("---\n - a\n - b") # => #<Psych::Nodes::Document:...>
begin
Psych.parse("--- `", "file.txt")
rescue Psych::SyntaxError => ex
p ex.file # => 'file.txt'
p ex.message # => "(file.txt): found character that cannot st... -
psych (188.0)
-
yaml のバックエンドライブラリです。libyaml ベースで作成されてお り、YAML バージョン 1.1 を扱う事ができます。
...yaml のバックエンドライブラリです。libyaml ベースで作成されてお
り、YAML バージョン 1.1 を扱う事ができます。
=== 概要
Psych を用いると YAML のパースと出力ができます。
これらの機能は libyaml http://pyyaml.org/wiki/LibYAML を用......大半のオブジェクトと YAML フォーマットの
データの間を相互に変換することができます。
=== 基本的な使いかた
//emlist[][ruby]{
require 'psych'
# YAML のテキストをパースする
Psych.load("--- foo") # => "foo"
# YAML のデータを出力
Psych.dum......す。
===== 中水準 パース API
Psych には YAML ドキュメントの AST にアクセスする API があります。
この AST は Psych::Parser と Psych::TreeBuilder で構築します。
Psych.parse_stream、Psych::Nodes、Psych::Nodes::Node
などを経由して AST を解析した...