nicer --tree printing, with values inlines to the right

This commit is contained in:
Jeremy Ashkenas
2010-02-13 09:51:52 -05:00
parent 8147ef554a
commit 4bad3e0f4f
2 changed files with 12 additions and 12 deletions

View File

@@ -78,8 +78,8 @@ Node::contains: (block) ->
# toString representation of the node, for inspecting the parse tree.
Node::toString: (idt) ->
idt: (idt || '') + TAB
@type + '\n' + _.map(@children, (child) -> idt + child.toString(idt)).join('')
idt ||= ''
'\n' + idt + @type + _.map(@children, (child) -> child.toString(idt + TAB)).join('')
# Default implementations of the common node methods.
Node::unwrap: -> this
@@ -189,7 +189,7 @@ LiteralNode: exports.LiteralNode: inherit Node, {
idt + @value + end
toString: (idt) ->
'"' + @value + '"' + '\n'
' "' + @value + '"'
}
@@ -653,9 +653,9 @@ CodeNode: exports.CodeNode: inherit Node, {
true
toString: (idt) ->
idt: (idt || '') + TAB
idt ||= ''
children: _.flatten [@params, @body.expressions]
@type + '\n' + _.map(children, (child) -> idt + child.toString(idt)).join('')
'\n' + idt + @type + _.map(children, (child) -> child.toString(idt + TAB)).join('')
}