From 1e5fbe04f64e02819236cfd381790a79f87171c8 Mon Sep 17 00:00:00 2001 From: kou Date: Wed, 10 Dec 2008 12:34:09 +0000 Subject: [PATCH] * lib/rss/maker.rb (RSS::Maker.[]): add. Suggested by Akinori MUSHA. Thanks!!! [ruby-dev:37210] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20610 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ lib/rss/maker.rb | 17 ++++++++++++----- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index c855f95344..e6b8b074a1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Wed Dec 10 21:32:02 2008 Kouhei Sutou + + * lib/rss/maker.rb (RSS::Maker.[]): add. + Suggested by Akinori MUSHA. Thanks!!! [ruby-dev:37210] + Wed Dec 10 12:56:32 2008 Akinori MUSHA * enumerator.c (enumerator_rewind): If the enclosed object diff --git a/lib/rss/maker.rb b/lib/rss/maker.rb index bcba1aaff3..ff32f5cb00 100644 --- a/lib/rss/maker.rb +++ b/lib/rss/maker.rb @@ -6,13 +6,14 @@ module RSS class << self def make(version, &block) - m = maker(version) - raise UnsupportedMakerVersionError.new(version) if m.nil? - m[:maker].make(m[:version], &block) + maker_info = self[version] + maker_info[:maker].make(maker_info[:version], &block) end - def maker(version) - MAKERS[version] + def [](version) + maker_info = maker(version) + raise UnsupportedMakerVersionError.new(version) if maker_info.nil? + maker_info end def add_maker(version, normalized_version, maker) @@ -26,6 +27,12 @@ module RSS def makers MAKERS.values.collect {|info| info[:maker]}.uniq end + + private + # Can I remove this method? + def maker(version) + MAKERS[version] + end end end end