55件ヒット
[1-55件を表示]
(0.042秒)
検索結果
-
Psych
:: Visitors :: YAMLTree (6029.0) -
Ruby オブジェクトから YAML の AST を構築するためのクラスです。
...クトから YAML の AST を構築するためのクラスです。
=== 例
builder = Psych::Visitors::YAMLTree.new
builder << { :foo => 'bar' }
builder << ["baz", "bazbaz"]
builder.tree # => #<Psych::Nodes::Stream ... > A stream containing two documents
puts tree.to_yaml
# =>
# ---... -
Psych
:: Parser (83.0) -
YAML のパーサ。
...YAML のパーサ。
このクラスは YAML ドキュメントをパースし、コンストラクタに渡された
ハンドラにイベントを通知(呼び出し)します。
このイベントを使って YAML の AST を構築したり YAML ドキュメントを
別のフォーマット変...... YAML ドキュメント に含まれているスカラー値を表示します。
# Handler for detecting scalar values
class ScalarHandler < Psych::Handler
def scalar value, anchor, tag, plain, quoted, style
puts value
end
end
parser = Psych::Parser.new(ScalarHandler.new)......parser.parse(yaml_document)
次の例は Psych::Emitter にパースの結果を戻しています。
STDIN からの入力をパース→YAMLフォーマットで STDERR に出力
という流れになっています。
parser = Psych::Parser.new(Psych::Emitter.new($stderr))
parser.parse($st... -
Psych
:: Emitter (65.0) -
Psych::Parser でパースし、生じたイベントから YAML ドキュメントを再構築するようなハンドラです。
...ベントから
YAML ドキュメントを再構築するようなハンドラです。
以下の例では STDIN から YAML ドキュメントを入力し、
再構築した YAML ドキュメントを STDERR に出力します。
parser = Psych::Parser.new(Psych::Emitter.new($stderr))
parser......発生させることで
YAML ドキュメントを構築させることもできます。
各メソッドの意味については Psych::Handler を参照してください。
require 'psych'
require 'stringio'
output = StringIO.new
emitter = Psych::Emitter.new(output)
emitter.start......"xyz", nil, nil, true, false, Psych::Nodes::Scalar::PLAIN)
emitter.scalar("23", nil, nil, false, true, Psych::Nodes::Scalar::SINGLE_QUOTED)
emitter.end_mapping
emitter.end_document(false)
emitter.end_stream
puts output.string
# =>
# %YAML 1.1
# ---
# a: 12
# xyz: '23'
# ...... -
Psych
:: TreeBuilder (59.0) -
YAML AST を構築するためのクラスです。
...YAML AST を構築するためのクラスです。
Psych::Parser.new に渡して YAML ドキュメントを YAML AST に変換する
ことができます。
また、Psych::Visitors::YAMLTree.new に渡して Ruby オブジェクト
を YAML AST に変換することもできます。
=== Exam......ple
parser = Psych::Parser.new Psych::TreeBuilder.new
parser.parse('--- foo')
parser.handler.root # => #<Psych::Nodes::Stream:0x00000001400000 ... >... -
Psych
:: Stream (35.0) -
入力されたオブジェクトから変換された YAML document を指定した IO に出力する機能を持つクラスです。
...ら変換された YAML document を指定した
IO に出力する機能を持つクラスです。
start で変換を開始し、push で変換する Ruby オブジェクトを渡し、
最後に finish を呼ぶことで変換を完了します。
stream = Psych::Stream.new($stdout)
stream.s......'})
stream.finish
YAML document は(バッファリングされずに)直接 $stdout に出力されます。
finish を確実に呼び出すためには Psych::Stream#start メソッドを
ブロック付きで呼び出すとよいでしょう。
stream = Psych::Stream.new($stdout)
stream.......start do |em|
em.push(:foo => 'bar')
end
基本的な仕組みは Psych::Visitors::YAMLTree と似ています。...