Ruby 1.8.7 リファレンスマニュアル > ライブラリ一覧 > yamlライブラリ > YAMLモジュール > load_stream
load_stream(io) -> object
[permalink][rdoc]与えられた io から YAML フォーマットの文書を すべて順に読み込んで Ruby のオブジェクトに変換していき、 それらオブジェクトを含んだ YAML::Stream を返します。
require 'yaml' class Dog attr_accessor :name def initialize(name) @name = name end end str1=<<EOT --- !ruby/Dog name: pochi --- !!Dog age: 0.5 EOT YAML.add_ruby_type("Dog") do |type, val| Dog.new(val["name"]) end ys = YAML.load_stream(str1) p ys #=> #<YAML::Stream:0x2b079d8 @options={}, @documents=[#<Dog:0x2b079c4 @name="pochi">, #<YAML::PrivateType:0x2b07780 @value={"age"=>0.5}, @type_id="Dog">]> ys.edit(1, Dog.new("tama")) p ys.documents #=> [#<Dog:0x2b079b0 @name="pochi">, #<Dog:0x2b0762c @name="tama">]