Ruby 2.1.0 リファレンスマニュアル > ライブラリ一覧 > psychライブラリ > Psychモジュール > load_stream

singleton method Psych.load_stream

load_stream(yaml, filename=nil) -> [object][permalink][rdoc]
load_stream(yaml, filename=nil) {|obj| ... } -> ()

複数の YAML ドキュメントを含むデータを Ruby のオブジェクトに変換します。

ブロックなしの場合はオブジェクトの配列を返します。

Psych.load_stream("--- foo\n...\n--- bar\n...") # => ['foo', 'bar']

ブロックありの場合は各オブジェクト引数としてそのブロックを呼び出します。

list = []
Psych.load_stream("--- foo\n...\n--- bar\n...") do |ruby|
  list << ruby
end
list # => ['foo', 'bar']

filename はパース中に発生した例外のメッセージに用います。

[PARAM] yaml:
YAML ドキュメント(文字列 or IO オブジェクト)
[PARAM] filename:
例外メッセージのためのファイル名
[EXCEPTION] Psych::SyntaxError:
YAMLドキュメントに文法エラーが発見されたときに発生します