From 12d3325346842b309e58e6eabd11e34ec5a8c615 Mon Sep 17 00:00:00 2001 From: ocean Date: Tue, 10 Jan 2006 03:50:28 +0000 Subject: * lib/yaml/rubytypes.rb (Fixnum): Bignum could not be loaded in ruby 1.8.3/1.8.4. [ruby-core:6115] * lib/yaml/rubytypes.rb (Numeric): Subclass of Numeric could not be dumped properly. [ruby-core:7047] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9816 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/yaml/rubytypes.rb | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) (limited to 'lib/yaml/rubytypes.rb') diff --git a/lib/yaml/rubytypes.rb b/lib/yaml/rubytypes.rb index d58e9bb38e..eebf027135 100644 --- a/lib/yaml/rubytypes.rb +++ b/lib/yaml/rubytypes.rb @@ -353,7 +353,17 @@ class Date end end -class Numeric +class Integer + yaml_as "tag:yaml.org,2002:int" + def to_yaml( opts = {} ) + YAML::quick_emit( nil, opts ) do |out| + out.scalar( "tag:yaml.org,2002:int", self.to_s, :plain ) + end + end +end + +class Float + yaml_as "tag:yaml.org,2002:float" def to_yaml( opts = {} ) YAML::quick_emit( nil, opts ) do |out| str = self.to_s @@ -364,19 +374,11 @@ class Numeric elsif str == "NaN" str = ".NaN" end - out.scalar( taguri, str, :plain ) + out.scalar( "tag:yaml.org,2002:float", str, :plain ) end end end -class Fixnum - yaml_as "tag:yaml.org,2002:int" -end - -class Float - yaml_as "tag:yaml.org,2002:float" -end - class TrueClass yaml_as "tag:yaml.org,2002:bool#yes" def to_yaml( opts = {} ) -- cgit v1.2.3