From da9cec713b117435b5dd412a3180d1d7ca2411ce Mon Sep 17 00:00:00 2001 From: why Date: Sat, 3 Apr 2004 08:13:22 +0000 Subject: * ext/syck/syck.h: version 0.43. * ext/syck/lib/gram.c: allow root-level inline collections. [ruby-talk:94922] * lib/yaml/rubytypes.rb (Symbol#to_yaml): emit symbols as implicits. [ruby-talk:94930] * ext/syck/bytecode.c: turn off default implicit typing. * ext/syck/implicit.c: detect base60 integers. * ext/syck/rubyext.c: handle base60, as well as hex and octal with commas. implicit typing of ruby symbols. git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@6083 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/yaml.rb | 20 ++++++++++++++++++-- lib/yaml/rubytypes.rb | 4 ++-- 2 files changed, 20 insertions(+), 4 deletions(-) (limited to 'lib') diff --git a/lib/yaml.rb b/lib/yaml.rb index 83ba9cc63..54880182e 100644 --- a/lib/yaml.rb +++ b/lib/yaml.rb @@ -87,6 +87,17 @@ module YAML return d end + # + # Dump documents to a stream + # + def YAML.dump_stream( *objs ) + d = YAML::Stream.new + objs.each do |doc| + d.add( doc ) + end + d.emit + end + # # Add a transfer method to a domain # @@ -215,9 +226,14 @@ module Kernel # ryan:: Either way, I certainly will have a pony parade. # - def y( x ) - puts x.to_yaml + def y( *x ) + puts( if x.length == 1 + YAML::dump( *x ) + else + YAML::dump_stream( *x ) + end ) end + private :y end diff --git a/lib/yaml/rubytypes.rb b/lib/yaml/rubytypes.rb index 0e5d5b17d..61ade3765 100644 --- a/lib/yaml/rubytypes.rb +++ b/lib/yaml/rubytypes.rb @@ -327,7 +327,7 @@ class Symbol end def to_yaml( opts = {} ) YAML::quick_emit( nil, opts ) { |out| - out << "!ruby/sym " + out << ":" self.id2name.to_yaml( :Emitter => out ) } end @@ -353,7 +353,7 @@ class Range def to_yaml( opts = {} ) YAML::quick_emit( nil, opts ) { |out| out << "!ruby/range " - self.inspect.to_yaml( :Emitter => out ) + self.to_s.to_yaml(:Emitter => out) } end end -- cgit