Class: RSS::XML::Element
- Inherits:
-
Object
- Object
- RSS::XML::Element
- Includes:
- Enumerable
- Defined in:
- lib/rss/xml.rb
Instance Attribute Summary (collapse)
-
- (Object) attributes
readonly
Returns the value of attribute attributes.
-
- (Object) children
readonly
Returns the value of attribute children.
-
- (Object) name
readonly
Returns the value of attribute name.
-
- (Object) prefix
readonly
Returns the value of attribute prefix.
-
- (Object) uri
readonly
Returns the value of attribute uri.
Instance Method Summary (collapse)
- - (Object) <<(child)
- - (Object) ==(other)
- - (Object) [](name)
- - (Object) []=(name, value)
- - (Object) each(&block)
- - (Object) full_name
-
- (Element) initialize(name, prefix = nil, uri = nil, attributes = {}, children = [])
constructor
A new instance of Element.
- - (Object) to_s
Methods included from Enumerable
Constructor Details
- (Element) initialize(name, prefix = nil, uri = nil, attributes = {}, children = [])
A new instance of Element
9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/rss/xml.rb', line 9 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 |
Instance Attribute Details
- (Object) attributes (readonly)
Returns the value of attribute attributes
8 9 10 |
# File 'lib/rss/xml.rb', line 8 def attributes @attributes end |
- (Object) children (readonly)
Returns the value of attribute children
8 9 10 |
# File 'lib/rss/xml.rb', line 8 def children @children end |
- (Object) name (readonly)
Returns the value of attribute name
8 9 10 |
# File 'lib/rss/xml.rb', line 8 def name @name end |
- (Object) prefix (readonly)
Returns the value of attribute prefix
8 9 10 |
# File 'lib/rss/xml.rb', line 8 def prefix @prefix end |
- (Object) uri (readonly)
Returns the value of attribute uri
8 9 10 |
# File 'lib/rss/xml.rb', line 8 def uri @uri end |
Instance Method Details
- (Object) <<(child)
29 30 31 |
# File 'lib/rss/xml.rb', line 29 def <<(child) @children << child end |
- (Object) ==(other)
37 38 39 40 41 42 43 |
# File 'lib/rss/xml.rb', line 37 def ==(other) other.kind_of?(self.class) and @name == other.name and @uri == other.uri and @attributes == other.attributes and @children == other.children end |
- (Object) [](name)
21 22 23 |
# File 'lib/rss/xml.rb', line 21 def [](name) @attributes[name] end |
- (Object) []=(name, value)
25 26 27 |
# File 'lib/rss/xml.rb', line 25 def []=(name, value) @attributes[name] = value end |
- (Object) each(&block)
33 34 35 |
# File 'lib/rss/xml.rb', line 33 def each(&block) @children.each(&block) end |
- (Object) full_name
62 63 64 65 66 67 68 |
# File 'lib/rss/xml.rb', line 62 def full_name if @prefix "#{@prefix}:#{@name}" else @name end end |
- (Object) to_s
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/rss/xml.rb', line 45 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 |