Ruby 1.9.3 リファレンスマニュアル > ライブラリ一覧 > syckライブラリ > Syckモジュール > add_domain_type
add_domain_type(domain, type_tag) {|type, val| ...} -> nil[permalink][rdoc]YAMLドメインに属しているクラスをYAMLに追加し、 そのクラスを見つけたときの操作を指定します。
require 'syck'
require 'yaml'
class Person
attr_accessor :name, :age
end
str=<<EOT
--- !Qjitsu.com,2007-05-04/Person
name: eiji
age: 33
EOT
YAML.each_document(str){|obj|
p obj
}
#=> #<YAML::DomainType:0x2b07974 @type_id="Person", @domain="Qjitsu.com,2007-05-04", @value={"name"=>"eiji", "age"=>33}>
#
YAML.add_domain_type( "Qjitsu.com,2007-05-04", "Person" ) { |type, val|
YAML.object_maker( Person, val )
}
YAML.each_document(str){|obj|
p obj
}
#=> #<Person:0x2b0762c @age=33, @name="eiji">