summaryrefslogtreecommitdiff
path: root/lib/rss/rss.rb
diff options
context:
space:
mode:
authorkou <kou@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-06-18 15:06:55 +0000
committerkou <kou@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-06-18 15:06:55 +0000
commit6cfd4dd1228831ea476be2f2c60e0bdd69d23eeb (patch)
tree6c7bee45e531c03fecf932e85bf697128b09527c /lib/rss/rss.rb
parentf29e486c7a914eba9bec81955650e74f4067b755 (diff)
* lib/rss/rss.rb: automatically detected attributes.
* lib/rss/0.9.rb: removed #_attrs. * lib/rss/1.0.rb: ditto. * lib/rss/2.0.rb: ditto. * lib/rss/image.rb: ditto. * lib/rss/taxonomy.rb: ditto. * lib/rss/trackback.rb: ditto. * lib/rss/parser.rb: followed new internal API. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10320 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/rss/rss.rb')
-rw-r--r--lib/rss/rss.rb11
1 files changed, 8 insertions, 3 deletions
diff --git a/lib/rss/rss.rb b/lib/rss/rss.rb
index 5900d5078c..ab4dd1d87a 100644
--- a/lib/rss/rss.rb
+++ b/lib/rss/rss.rb
@@ -482,13 +482,16 @@ EOC
end
def self.install_get_attribute(name, uri, required=true,
- type=nil, disp_name=name)
+ type=nil, disp_name=nil,
+ element_name=nil)
+ disp_name ||= name
+ element_name ||= name
def_corresponded_attr_writer name, type, disp_name
convert_attr_reader name
if type == :boolean and /^is/ =~ name
alias_method "\#{$POSTMATCH}?", name
end
- GET_ATTRIBUTES << [name, uri, required]
+ GET_ATTRIBUTES << [name, uri, required, element_name]
add_need_initialize_variable(disp_name)
end
@@ -751,7 +754,9 @@ EOC
end
def _attrs
- []
+ self.class.get_attributes.collect do |name, uri, required, element_name|
+ [element_name, required, name]
+ end
end
def __validate(ignore_unknown_element, tags=_tags, recursive=true)