| Class | HTML5::TreeBuilders::Hpricot::Element |
| In: |
lib/feed_tools/vendor/html5/lib/html5/treebuilders/hpricot.rb
|
| Parent: | Node |
# File lib/feed_tools/vendor/html5/lib/html5/treebuilders/hpricot.rb, line 66
66: def self.hpricot_class
67: ::Hpricot::Elem
68: end
# File lib/feed_tools/vendor/html5/lib/html5/treebuilders/hpricot.rb, line 70
70: def initialize(name)
71: super(name)
72:
73: @hpricot = ::Hpricot::Elem.new(::Hpricot::STag.new(name))
74: end
# File lib/feed_tools/vendor/html5/lib/html5/treebuilders/hpricot.rb, line 112
112: def attributes
113: AttributeProxy.new(@hpricot)
114: end
# File lib/feed_tools/vendor/html5/lib/html5/treebuilders/hpricot.rb, line 116
116: def attributes=(attrs)
117: attrs.each { |name, value| @hpricot[name] = value }
118: end
# File lib/feed_tools/vendor/html5/lib/html5/treebuilders/hpricot.rb, line 80
80: def cloneNode
81: attributes.inject(self.class.new(name)) do |node, (name, value)|
82: node.hpricot[name] = value
83: node
84: end
85: end
# File lib/feed_tools/vendor/html5/lib/html5/treebuilders/hpricot.rb, line 76
76: def name
77: @hpricot.stag.name
78: end
# File lib/feed_tools/vendor/html5/lib/html5/treebuilders/hpricot.rb, line 120
120: def printTree(indent=0)
121: tree = "\n|#{' ' * indent}<#{name}>"
122: indent += 2
123: attributes.each do |name, value|
124: next if name == 'xmlns'
125: tree += "\n|#{' ' * indent}#{name}=\"#{value}\""
126: end
127: childNodes.inject(tree) { |tree, child| tree + child.printTree(indent) }
128: end