class RSS::XML::Element
Attributes
attributes[R]
children[R]
name[R]
prefix[R]
uri[R]
Public Class Methods
new(name, prefix=nil, uri=nil, attributes={}, children=[])
click to toggle source
# File rss/xml.rb, line 10 def initialize(name, prefix=nil, uri=nil, attributes={}, children=[]) @name = name @prefix = prefix @uri = uri @attributes = attributes if children.is_a?(String) or !children.respond_to?(:each) @children = [children] else @children = children end end
Public Instance Methods
<<(child)
click to toggle source
# File rss/xml.rb, line 30 def <<(child) @children << child end
==(other)
click to toggle source
# File rss/xml.rb, line 38 def ==(other) other.kind_of?(self.class) and @name == other.name and @uri == other.uri and @attributes == other.attributes and @children == other.children end
[](name)
click to toggle source
# File rss/xml.rb, line 22 def [](name) @attributes[name] end
[]=(name, value)
click to toggle source
# File rss/xml.rb, line 26 def []=(name, value) @attributes[name] = value end
each(&block)
click to toggle source
# File rss/xml.rb, line 34 def each(&block) @children.each(&block) end
full_name()
click to toggle source
# File rss/xml.rb, line 63 def full_name if @prefix "#{@prefix}:#{@name}" else @name end end
to_s()
click to toggle source
# File rss/xml.rb, line 46 def to_s rv = "<#{full_name}" attributes.each do |key, value| rv << " #{Utils.html_escape(key)}=\"#{Utils.html_escape(value)}\"" end if children.empty? rv << "/>" else rv << ">" children.each do |child| rv << child.to_s end rv << "</#{full_name}>" end rv end