From f7297292f3e8c823b00aaba12557c715123e5e0a Mon Sep 17 00:00:00 2001 From: kou Date: Sat, 17 Jun 2006 01:28:46 +0000 Subject: * lib/rss/rss.rb (Kernel#funcall): removed. * lib/rss/parser.rb (Kernel.URI): removed. * lib/rss/maker/: supported xxx.new_yyy do |yyy| yyy.zzz = zzz ... end style and this style became the style of the recommendation. Old style yyy = xxx.new_yyy yyy.zzz = zzz ... is supported too but this style isn't recommended. [ruby-talk:197284] * test/rss/test_*maker*.rb: used new recommended style. git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@10300 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/rss/maker/base.rb | 36 ++++++++++++++++++++++++++++-------- lib/rss/maker/dublincore.rb | 6 +++++- lib/rss/maker/taxonomy.rb | 6 +++++- lib/rss/maker/trackback.rb | 8 ++++++-- lib/rss/parser.rb | 8 -------- lib/rss/rss.rb | 8 -------- 6 files changed, 44 insertions(+), 28 deletions(-) (limited to 'lib/rss') diff --git a/lib/rss/maker/base.rb b/lib/rss/maker/base.rb index 6d7dd557b..2327dd98e 100644 --- a/lib/rss/maker/base.rb +++ b/lib/rss/maker/base.rb @@ -207,7 +207,11 @@ EOC def new_xml_stylesheet xss = XMLStyleSheet.new(@maker) @xml_stylesheets << xss - xss + if block_given? + yield xss + else + xss + end end class XMLStyleSheet @@ -281,8 +285,12 @@ EOC def new_day day = self.class::Day.new(@maker) - @days << day - day + @days << day + if block_given? + yield day + else + day + end end def current_element(rss) @@ -311,8 +319,12 @@ EOC def new_hour hour = self.class::Hour.new(@maker) - @hours << hour - hour + @hours << hour + if block_given? + yield hour + else + hour + end end def current_element(rss) @@ -356,7 +368,11 @@ EOC def new_category category = self.class::Category.new(@maker) @categories << category - category + if block_given? + yield category + else + category + end end class CategoryBase @@ -414,8 +430,12 @@ EOC def new_item item = self.class::Item.new(@maker) - @items << item - item + @items << item + if block_given? + yield item + else + item + end end private diff --git a/lib/rss/maker/dublincore.rb b/lib/rss/maker/dublincore.rb index e03837832..0cf1255e8 100644 --- a/lib/rss/maker/dublincore.rb +++ b/lib/rss/maker/dublincore.rb @@ -53,7 +53,11 @@ EOC def new_#{name} #{name} = self.class::#{klass_name}.new(self) @#{plural_name} << #{name} - #{name} + if block_given? + yield #{name} + else + #{name} + end end def to_rss(rss, current) diff --git a/lib/rss/maker/taxonomy.rb b/lib/rss/maker/taxonomy.rb index 2e54ea66e..f27299658 100644 --- a/lib/rss/maker/taxonomy.rb +++ b/lib/rss/maker/taxonomy.rb @@ -107,7 +107,11 @@ EOC def new_taxo_topic taxo_topic = self.class::TaxonomyTopic.new(self) @taxo_topics << taxo_topic - taxo_topic + if block_given? + yield taxo_topic + else + taxo_topic + end end def to_rss(rss, current) diff --git a/lib/rss/maker/trackback.rb b/lib/rss/maker/trackback.rb index 32254a040..4ae6164f6 100644 --- a/lib/rss/maker/trackback.rb +++ b/lib/rss/maker/trackback.rb @@ -42,8 +42,12 @@ module RSS def new_about about = self.class::TrackBackAbout.new(@maker) - @abouts << about - about + @abouts << about + if block_given? + yield about + else + about + end end def to_rss(rss, current) diff --git a/lib/rss/parser.rb b/lib/rss/parser.rb index ace3d262f..10c6be853 100644 --- a/lib/rss/parser.rb +++ b/lib/rss/parser.rb @@ -4,14 +4,6 @@ begin rescue LoadError require "uri" end -unless Kernel.methods.include?("URI") - module Kernel - def URI(uri_str) # :doc: - URI.parse(uri_str) - end - module_function :URI - end -end require "rss/rss" diff --git a/lib/rss/rss.rb b/lib/rss/rss.rb index f424f1617..589478665 100644 --- a/lib/rss/rss.rb +++ b/lib/rss/rss.rb @@ -52,14 +52,6 @@ class Hash end end -module Kernel - unless methods.include?("funcall") - def funcall(*args, &block) - __send__(*args, &block) - end - end -end - require "English" require "rss/utils" require "rss/converter" -- cgit