Class: SyntaxTree::DotFormatter
- Inherits:
-
Object
- Object
- SyntaxTree::DotFormatter
- Defined in:
- lib/syntax_tree/node.rb
Overview
Responsible for formatting Dot2 and Dot3 nodes.
Instance Attribute Summary collapse
-
#node ⇒ Object
readonly
[Dot2 | Dot3] the node that is being formatter.
-
#operator ⇒ Object
readonly
[String] the operator to display.
Instance Method Summary collapse
- #format(q) ⇒ Object
-
#initialize(operator, node) ⇒ DotFormatter
constructor
A new instance of DotFormatter.
Constructor Details
#initialize(operator, node) ⇒ DotFormatter
Returns a new instance of DotFormatter.
4163 4164 4165 4166 |
# File 'lib/syntax_tree/node.rb', line 4163 def initialize(operator, node) @operator = operator @node = node end |
Instance Attribute Details
#node ⇒ Object (readonly)
[Dot2 | Dot3] the node that is being formatter
4161 4162 4163 |
# File 'lib/syntax_tree/node.rb', line 4161 def node @node end |
#operator ⇒ Object (readonly)
[String] the operator to display
4158 4159 4160 |
# File 'lib/syntax_tree/node.rb', line 4158 def operator @operator end |
Instance Method Details
#format(q) ⇒ Object
4168 4169 4170 4171 4172 4173 4174 4175 4176 4177 4178 4179 |
# File 'lib/syntax_tree/node.rb', line 4168 def format(q) space = [If, IfMod, Unless, UnlessMod].include?(q.parent.class) left = node.left right = node.right q.format(left) if left q.text(" ") if space q.text(operator) q.text(" ") if space q.format(right) if right end |