mirror of
https://github.com/jashkenas/coffeescript.git
synced 2026-02-18 11:31:20 -05:00
fixing comment-within-objecta-and-array-literal printing for the new expression regime.
This commit is contained in:
@@ -533,10 +533,11 @@ module CoffeeScript
|
|||||||
joins = Hash.new("\n")
|
joins = Hash.new("\n")
|
||||||
non_comments = @properties.select {|p| !p.is_a?(CommentNode) }
|
non_comments = @properties.select {|p| !p.is_a?(CommentNode) }
|
||||||
non_comments.each {|p| joins[p] = p == non_comments.last ? "\n" : ",\n" }
|
non_comments.each {|p| joins[p] = p == non_comments.last ? "\n" : ",\n" }
|
||||||
props = @properties.map { |prop|
|
props = @properties.map { |prop|
|
||||||
join = joins[prop]
|
join = joins[prop]
|
||||||
join = '' if prop == @properties.last
|
join = '' if prop == @properties.last
|
||||||
o[:indent] + prop.compile(o) + join
|
idt = prop.is_a?(CommentNode) ? '' : o[:indent]
|
||||||
|
"#{idt}#{prop.compile(o)}#{join}"
|
||||||
}.join('')
|
}.join('')
|
||||||
write("{\n#{props}\n#{indent}}")
|
write("{\n#{props}\n#{indent}}")
|
||||||
end
|
end
|
||||||
@@ -551,11 +552,14 @@ module CoffeeScript
|
|||||||
end
|
end
|
||||||
|
|
||||||
def compile_node(o)
|
def compile_node(o)
|
||||||
|
indent = o[:indent]
|
||||||
|
o[:indent] += TAB
|
||||||
objects = @objects.map { |obj|
|
objects = @objects.map { |obj|
|
||||||
joiner = obj.is_a?(CommentNode) ? "\n#{o[:indent] + TAB}" : obj == @objects.last ? '' : ', '
|
code = obj.compile(o)
|
||||||
obj.compile(o.merge(:indent => o[:indent] + TAB)) + joiner
|
obj.is_a?(CommentNode) ? "\n#{code}\n#{o[:indent]}" :
|
||||||
|
obj == @objects.last ? code : "#{code}, "
|
||||||
}.join('')
|
}.join('')
|
||||||
ending = objects.include?("\n") ? "\n#{o[:indent]}]" : ']'
|
ending = objects.include?("\n") ? "\n#{indent}]" : ']'
|
||||||
write("[#{objects}#{ending}")
|
write("[#{objects}#{ending}")
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user