class RailInspector::Visitor::HashToString
Attributes
Public Class Methods
# File tools/rail_inspector/lib/rail_inspector/visitor/hash_to_string.rb, line 10 def initialize @to_s = +"" end
Public Instance Methods
# File tools/rail_inspector/lib/rail_inspector/visitor/hash_to_string.rb, line 32 def visit_assoc_node(node) @to_s << " " visit(node.key) case node.key in Prism::SymbolNode @to_s << ": " in Prism::StringNode @to_s << " => " end case node.value when Prism::SymbolNode @to_s << ":" end visit(node.value) end
# File tools/rail_inspector/lib/rail_inspector/visitor/hash_to_string.rb, line 70 def visit_false_node(node) @to_s << "false" end
# File tools/rail_inspector/lib/rail_inspector/visitor/hash_to_string.rb, line 14 def visit_hash_node(node) @to_s << "{" if node.elements.length > 0 visit(node.elements[0]) if node.elements.length > 1 node.elements[1..-1].each do |a| @to_s << "," visit(a) end end @to_s << " " end @to_s << "}" end
# File tools/rail_inspector/lib/rail_inspector/visitor/hash_to_string.rb, line 52 def visit_integer_node(node) @to_s << node.value.to_s end
# File tools/rail_inspector/lib/rail_inspector/visitor/hash_to_string.rb, line 56 def visit_string_node(node) @to_s << '"' @to_s << node.unescaped @to_s << '"' end
# File tools/rail_inspector/lib/rail_inspector/visitor/hash_to_string.rb, line 62 def visit_symbol_node(node) @to_s << node.unescaped end
# File tools/rail_inspector/lib/rail_inspector/visitor/hash_to_string.rb, line 66 def visit_true_node(node) @to_s << "true" end