Module: Rubyfocus::XMLTranslator
- Defined in:
- lib/rubyfocus/xml_translator.rb
Constant Summary collapse
- VALID_NODE_NAMES =
%w(string true false integer array)
Class Method Summary collapse
- .array(node) ⇒ Object
- .false(node) ⇒ Object
- .integer(node) ⇒ Object
-
.parse(node) ⇒ Object
Actual parsing method.
-
.string(node) ⇒ Object
Individual parsing methods.
- .true(node) ⇒ Object
Class Method Details
.array(node) ⇒ Object
32 33 34 |
# File 'lib/rubyfocus/xml_translator.rb', line 32 def array(node) node.children.map{ |child| parse(child) } end |
.false(node) ⇒ Object
24 25 26 |
# File 'lib/rubyfocus/xml_translator.rb', line 24 def false(node) false end |
.integer(node) ⇒ Object
28 29 30 |
# File 'lib/rubyfocus/xml_translator.rb', line 28 def integer(node) node.inner_html.to_i end |
.parse(node) ⇒ Object
Actual parsing method
6 7 8 9 10 11 12 13 |
# File 'lib/rubyfocus/xml_translator.rb', line 6 def parse(node) method_name = node.name if VALID_NODE_NAMES.include?(method_name) self.send(method_name, node) else raise RuntimeError, "Does not recognise node type: #{method_name}." end end |
.string(node) ⇒ Object
Individual parsing methods
16 17 18 |
# File 'lib/rubyfocus/xml_translator.rb', line 16 def string(node) node.inner_html end |
.true(node) ⇒ Object
20 21 22 |
# File 'lib/rubyfocus/xml_translator.rb', line 20 def true(node) true end |