diff options
| author | kou <kou@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-09-15 04:41:28 +0000 |
|---|---|---|
| committer | kou <kou@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-09-15 04:41:28 +0000 |
| commit | 50de0d6a1d308c0586bd67070703af41b33f80ac (patch) | |
| tree | a95638b481c27eedfb67197660b22667466d5831 /lib/rss/rss.rb | |
| parent | 9bc67b6314bb47bc55330d4d634013053147ea52 (diff) | |
| download | ruby-50de0d6a1d308c0586bd67070703af41b33f80ac.tar.gz ruby-50de0d6a1d308c0586bd67070703af41b33f80ac.tar.xz ruby-50de0d6a1d308c0586bd67070703af41b33f80ac.zip | |
* lib/rss.rb, lib/rss/, test/rss/:
- 0.1.9 -> 0.2.0.
- supported Slash module.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@13446 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/rss/rss.rb')
| -rw-r--r-- | lib/rss/rss.rb | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/lib/rss/rss.rb b/lib/rss/rss.rb index db507f78c..e381c8540 100644 --- a/lib/rss/rss.rb +++ b/lib/rss/rss.rb @@ -53,7 +53,7 @@ require "rss/xml-stylesheet" module RSS - VERSION = "0.1.9" + VERSION = "0.2.0" URI = "http://purl.org/rss/1.0/" @@ -361,6 +361,12 @@ EOC end def csv_attr_reader(*attrs) + separator = nil + if attrs.last.is_a?(Hash) + options = attrs.pop + separator = options[:separator] + end + separator ||= ", " attrs.each do |attr| attr = attr.id2name if attr.kind_of?(Integer) module_eval(<<-EOC, __FILE__, __LINE__ + 1) @@ -369,7 +375,7 @@ EOC if @#{attr}.nil? @#{attr} else - @#{attr}.join(", ") + @#{attr}.join(#{separator.dump}) end end EOC @@ -531,6 +537,14 @@ EOC EOC end + def csv_integer_writer(name, disp_name=name) + module_eval(<<-EOC, __FILE__, __LINE__ + 1) + def #{name}=(new_value) + @#{name} = Utils::CSV.parse(new_value) {|v| Integer(v)} + end + EOC + end + def def_children_accessor(accessor_name, plural_name) module_eval(<<-EOC, *get_file_and_line_from_caller(2)) def #{plural_name} @@ -720,6 +734,8 @@ EOC yes_other_writer name, disp_name when :csv csv_writer name + when :csv_integer + csv_integer_writer name else attr_writer name end @@ -737,6 +753,8 @@ EOC yes_other_attr_reader name when :csv csv_attr_reader name + when :csv_integer + csv_attr_reader name, :separator => "," else convert_attr_reader name end |
