Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(83)

Unified Diff: lib/src/js/printer.dart

Issue 1153003003: fixes #40, extension methods for primitive types (Closed) Base URL: git@github.com:dart-lang/dev_compiler.git@master
Patch Set: Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: lib/src/js/printer.dart
diff --git a/lib/src/js/printer.dart b/lib/src/js/printer.dart
index c8becbb40066bfc46ddaefbe3f4e1de3ee224312..7f75634e91d6fe0c1d7fb9d9a8742f767d03875e 100644
--- a/lib/src/js/printer.dart
+++ b/lib/src/js/printer.dart
@@ -894,6 +894,8 @@ class Printer implements NodeVisitor {
visitArrayInitializer(ArrayInitializer node) {
out("[");
+ indentMore();
+ var multiline = node.multiline;
List<Expression> elements = node.elements;
for (int i = 0; i < elements.length; i++) {
Expression element = elements[i];
@@ -905,13 +907,22 @@ class Printer implements NodeVisitor {
out(",");
continue;
}
- if (i != 0) spaceOut();
+ if (i != 0 && !multiline) spaceOut();
+ if (multiline) {
+ forceLine();
+ indent();
+ }
visitNestedExpression(element, ASSIGNMENT,
newInForInit: false, newAtStatementBegin: false);
// We can skip the trailing "," for the last element (since it's not
// an array hole).
if (i != elements.length - 1) out(",");
}
+ indentLess();
+ if (multiline) {
+ lineOut();
+ indent();
+ }
out("]");
}
@@ -924,20 +935,20 @@ class Printer implements NodeVisitor {
out("{");
indentMore();
- var isOneLiner = !node.vertical;
+ var multiline = node.multiline;
for (int i = 0; i < properties.length; i++) {
if (i != 0) {
out(",");
- if (isOneLiner) spaceOut();
+ if (!multiline) spaceOut();
}
- if (!isOneLiner) {
+ if (multiline) {
forceLine();
indent();
}
visit(properties[i]);
}
indentLess();
- if (!isOneLiner) {
+ if (multiline) {
lineOut();
indent();
}

Powered by Google App Engine
This is Rietveld 408576698