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 | 1b56bcce22a069eba6afb7e36f654783e5b4fbbc (patch) | |
tree | a95638b481c27eedfb67197660b22667466d5831 /lib/rss/rss.rb | |
parent | b528261ad821d84b6a392d9497cea6f199cba307 (diff) | |
download | ruby-1b56bcce22a069eba6afb7e36f654783e5b4fbbc.tar.gz |
* lib/rss.rb, lib/rss/, test/rss/:
- 0.1.9 -> 0.2.0.
- supported Slash module.
git-svn-id: svn+ssh://ci.ruby-lang.org/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 db507f78c8..e381c85406 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 |