summaryrefslogtreecommitdiff
path: root/lib/rss/rss.rb
diff options
context:
space:
mode:
authorkou <kou@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-02-02 13:04:32 +0000
committerkou <kou@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-02-02 13:04:32 +0000
commit4af65e86a82037f09e44e0cad4743cdbec25c7af (patch)
tree356363d852c3b9c7f1e156fbae70db6eedaae8bb /lib/rss/rss.rb
parent296f79bef5047908a62430e1e798a305cb480dae (diff)
* lib/rss/rss.rb (RSS::Element#convert): added.
* lib/rss/rss.rb: convert -> need_convert. * lib/rss/1.0.rb: ditto. * lib/rss/0.9.rb: ditto. * lib/rss/2.0.rb: ditto. * lib/rss/trackback.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7865 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/rss/rss.rb')
-rw-r--r--lib/rss/rss.rb30
1 files changed, 19 insertions, 11 deletions
diff --git a/lib/rss/rss.rb b/lib/rss/rss.rb
index 216d514b8d..7ffb475007 100644
--- a/lib/rss/rss.rb
+++ b/lib/rss/rss.rb
@@ -164,7 +164,7 @@ module RSS
install_element(name) do |n, elem_name|
<<-EOC
if @#{n}
- "\#{@#{n}.to_s(convert, indent)}"
+ "\#{@#{n}.to_s(need_convert, indent)}"
else
''
end
@@ -183,7 +183,7 @@ EOC
<<-EOC
rv = []
@#{n}.each do |x|
- value = "\#{x.to_s(convert, indent)}"
+ value = "\#{x.to_s(need_convert, indent)}"
rv << value if /\\A\\s*\\z/ !~ value
end
rv.join("\n")
@@ -202,8 +202,8 @@ EOC
if @#{n}
rv = "\#{indent}<#{elem_name}>"
value = html_escape(@#{n})
- if convert and @converter
- rv << @converter.convert(value)
+ if need_convert
+ rv << convert(value)
else
rv << value
end
@@ -260,8 +260,8 @@ EOC
if @#{n}
rv = "\#{indent}<#{elem_name}>"
value = html_escape(@#{n}.#{type})
- if convert and @converter
- rv << @converter.convert(value)
+ if need_convert
+ rv << convert(value)
else
rv << value
end
@@ -279,7 +279,7 @@ EOC
def install_element(name, postfix="")
elem_name = name.sub('_', ':')
module_eval(<<-EOC, *get_file_and_line_from_caller(2))
- def #{name}_element#{postfix}(convert=true, indent='')
+ def #{name}_element#{postfix}(need_convert=true, indent='')
#{yield(name, elem_name)}
end
private :#{name}_element#{postfix}
@@ -332,12 +332,12 @@ EOC
def def_content_only_to_s
module_eval(<<-EOC, *get_file_and_line_from_caller(2))
- def to_s(convert=true, indent=calc_indent)
+ def to_s(need_convert=true, indent=calc_indent)
if @content
rv = tag(indent) do |next_indent|
h(@content)
end
- rv = @converter.convert(rv) if convert and @converter
+ rv = convert(rv) if need_convert
rv
else
""
@@ -515,6 +515,14 @@ EOC
child.converter = converter unless child.nil?
end
end
+
+ def convert(value)
+ if @converter
+ @converter.convert(value)
+ else
+ value
+ end
+ end
def validate
validate_attribute
@@ -692,12 +700,12 @@ EOC
end
end
- def other_element(convert, indent='')
+ def other_element(need_convert, indent='')
rv = []
private_methods.each do |meth|
if /\A([^_]+)_[^_]+_elements?\z/ =~ meth and
self.class::NSPOOL.has_key?($1)
- res = __send__(meth, convert)
+ res = __send__(meth, need_convert)
rv << "#{indent}#{res}" if /\A\s*\z/ !~ res
end
end