Class: SyntaxTree::JSON::PrettyPrint
- Defined in:
- lib/syntax_tree/json/pretty_print.rb
Overview
This class is a visitor responsible for pretty-printing the AST.
Instance Attribute Summary collapse
-
#q ⇒ Object
readonly
Returns the value of attribute q.
Instance Method Summary collapse
-
#initialize(q) ⇒ PrettyPrint
constructor
A new instance of PrettyPrint.
-
#visit_array(node) ⇒ Object
Visit an AST::Array node.
-
#visit_false(node) ⇒ Object
Visit an AST::False node.
-
#visit_null(node) ⇒ Object
Visit an AST::Null node.
-
#visit_number(node) ⇒ Object
Visit an AST::Number node.
-
#visit_object(node) ⇒ Object
Visit an AST::Object node.
-
#visit_root(node) ⇒ Object
Visit an AST::Root node.
-
#visit_string(node) ⇒ Object
Visit an AST::String node.
-
#visit_true(node) ⇒ Object
Visit an AST::True node.
Methods inherited from Visitor
#visit, #visit_all, #visit_child_nodes
Constructor Details
#initialize(q) ⇒ PrettyPrint
Returns a new instance of PrettyPrint.
9 10 11 |
# File 'lib/syntax_tree/json/pretty_print.rb', line 9 def initialize(q) @q = q end |
Instance Attribute Details
#q ⇒ Object (readonly)
Returns the value of attribute q.
7 8 9 |
# File 'lib/syntax_tree/json/pretty_print.rb', line 7 def q @q end |
Instance Method Details
#visit_array(node) ⇒ Object
Visit an AST::Array node.
14 15 16 |
# File 'lib/syntax_tree/json/pretty_print.rb', line 14 def visit_array(node) group("array") { field("values", node.values) } end |
#visit_false(node) ⇒ Object
Visit an AST::False node.
19 20 21 |
# File 'lib/syntax_tree/json/pretty_print.rb', line 19 def visit_false(node) q.text("false") end |
#visit_null(node) ⇒ Object
Visit an AST::Null node.
24 25 26 |
# File 'lib/syntax_tree/json/pretty_print.rb', line 24 def visit_null(node) q.text("null") end |
#visit_number(node) ⇒ Object
Visit an AST::Number node.
29 30 31 |
# File 'lib/syntax_tree/json/pretty_print.rb', line 29 def visit_number(node) group("number") { field("value", node.value) } end |
#visit_object(node) ⇒ Object
Visit an AST::Object node.
34 35 36 |
# File 'lib/syntax_tree/json/pretty_print.rb', line 34 def visit_object(node) group("object") { field("values", node.values) } end |
#visit_root(node) ⇒ Object
Visit an AST::Root node.
39 40 41 |
# File 'lib/syntax_tree/json/pretty_print.rb', line 39 def visit_root(node) group("root") { field("value", node.value) } end |
#visit_string(node) ⇒ Object
Visit an AST::String node.
44 45 46 |
# File 'lib/syntax_tree/json/pretty_print.rb', line 44 def visit_string(node) group("string") { field("value", node.value) } end |
#visit_true(node) ⇒ Object
Visit an AST::True node.
49 50 51 |
# File 'lib/syntax_tree/json/pretty_print.rb', line 49 def visit_true(node) q.text("true") end |