mirror of
https://github.com/jashkenas/coffeescript.git
synced 2026-05-03 03:00:14 -04:00
Issue #870 ... placeholders in destructuring assignment.
This commit is contained in:
@@ -1134,6 +1134,9 @@
|
||||
value = this.value;
|
||||
objects = this.variable.base.objects;
|
||||
if (!(olen = objects.length)) {
|
||||
if (top) {
|
||||
return false;
|
||||
}
|
||||
code = value.compile(o);
|
||||
if (o.level >= LEVEL_OP) {
|
||||
return "(" + code + ")";
|
||||
@@ -1208,7 +1211,7 @@
|
||||
if (!top) {
|
||||
assigns.push(vvar);
|
||||
}
|
||||
code = assigns.join(', ');
|
||||
code = (compact(assigns)).join(', ');
|
||||
if (o.level < LEVEL_LIST) {
|
||||
return code;
|
||||
} else {
|
||||
|
||||
@@ -908,6 +908,7 @@ exports.Assign = class Assign extends Base
|
||||
{value} = this
|
||||
{objects} = @variable.base
|
||||
unless olen = objects.length
|
||||
return false if top
|
||||
code = value.compile o
|
||||
return if o.level >= LEVEL_OP then "(#{code})" else code
|
||||
isObject = @variable.isObject()
|
||||
@@ -968,7 +969,7 @@ exports.Assign = class Assign extends Base
|
||||
val = new Value new Literal(vvar), [new (if acc then Access else Index) idx]
|
||||
assigns.push new Assign(obj, val, null, param: @param).compile o, LEVEL_TOP
|
||||
assigns.push vvar unless top
|
||||
code = assigns.join ', '
|
||||
code = (compact assigns).join ', '
|
||||
if o.level < LEVEL_LIST then code else "(#{code})"
|
||||
|
||||
# When compiling a conditional assignment, take care to ensure that the
|
||||
|
||||
Reference in New Issue
Block a user