From: sakazuki Date: 2006-01-26T13:55:19+09:00 Subject: [ruby-list:41800] Hashを継承したクラスでYAML.dump こんにちは。sakazukiです。 YAMLライブラリのバグレポートです Hashを継承したクラスで定義した属性がYAML.dump/loadで復元出来ません。 require 'yaml' class B < Hash def initialize(*v) @order = [] super end attr_accessor :order end b = B.new p b.order # => [] s = YAML.dump(b) b2 = YAML.load(s) p b2.order # => nil 1.8.4では orderが復元出来ない, 1.8.3では可 class A def initialize @test = [] end attr_accessor :test end class C < A def initialize @order = [] super end attr_accessor :order end c = C.new p c.order, c.test # => [], [] s = YAML.dump(c) c2 = YAML.load(s) p c2.order, c2.test # => [], [] Hashでなければ大丈夫 -- sakazuki