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

Side by Side Diff: third_party/pkg/angular/lib/core/parser/unparser.dart

Issue 257423008: Update all Angular libs (run update_all.sh). (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 8 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 library angular.core.parser.unparser; 1 library angular.core.parser.unparser;
2 2
3 import 'package:angular/core/parser/syntax.dart'; 3 import 'package:angular/core/parser/syntax.dart';
4 4
5 class Unparser extends Visitor { 5 class Unparser extends Visitor {
6 final StringBuffer buffer; 6 final StringBuffer buffer;
7 Unparser(this.buffer); 7 Unparser(this.buffer);
8 8
9 static String unparse(Expression expression) { 9 static String unparse(Expression expression) {
10 StringBuffer buffer = new StringBuffer(); 10 StringBuffer buffer = new StringBuffer();
11 Unparser unparser = new Unparser(buffer); 11 Unparser unparser = new Unparser(buffer);
12 unparser.visit(expression); 12 unparser.visit(expression);
13 return "$buffer"; 13 return "$buffer";
14 } 14 }
15 15
16 write(String string) { 16 void write(String string) {
17 buffer.write(string); 17 buffer.write(string);
18 } 18 }
19 19
20 writeArguments(List<Expression> arguments) { 20 void writeArguments(CallArguments arguments) {
21 bool first = true;
21 write('('); 22 write('(');
22 for (int i = 0; i < arguments.length; i++) { 23 for (int i = 0; i < arguments.positionals.length; i++) {
23 if (i != 0) write(','); 24 if (!first) write(', ');
24 visit(arguments[i]); 25 first = false;
26 visit(arguments.positionals[i]);
25 } 27 }
28 arguments.named.forEach((String name, value) {
29 if (!first) write(', ');
30 first = false;
31 write('$name: ');
32 visit(value);
33 });
26 write(')'); 34 write(')');
27 } 35 }
28 36
29 visitChain(Chain chain) { 37 void visitChain(Chain chain) {
30 for (int i = 0; i < chain.expressions.length; i++) { 38 for (int i = 0; i < chain.expressions.length; i++) {
31 if (i != 0) write(';'); 39 if (i != 0) write(';');
32 visit(chain.expressions[i]); 40 visit(chain.expressions[i]);
33 } 41 }
34 } 42 }
35 43
36 visitFilter(Filter filter) { 44 void visitFilter(Filter filter) {
37 write('('); 45 write('(');
38 visit(filter.expression); 46 visit(filter.expression);
39 write('|${filter.name}'); 47 write('|${filter.name}');
40 for (int i = 0; i < filter.arguments.length; i++) { 48 for (int i = 0; i < filter.arguments.length; i++) {
41 write(' :'); 49 write(' :');
42 visit(filter.arguments[i]); 50 visit(filter.arguments[i]);
43 } 51 }
44 write(')'); 52 write(')');
45 } 53 }
46 54
47 visitAssign(Assign assign) { 55 void visitAssign(Assign assign) {
48 visit(assign.target); 56 visit(assign.target);
49 write('='); 57 write('=');
50 visit(assign.value); 58 visit(assign.value);
51 } 59 }
52 60
53 visitConditional(Conditional conditional) { 61 void visitConditional(Conditional conditional) {
54 visit(conditional.condition); 62 visit(conditional.condition);
55 write('?'); 63 write('?');
56 visit(conditional.yes); 64 visit(conditional.yes);
57 write(':'); 65 write(':');
58 visit(conditional.no); 66 visit(conditional.no);
59 } 67 }
60 68
61 visitAccessScope(AccessScope access) { 69 void visitAccessScope(AccessScope access) {
62 write(access.name); 70 write(access.name);
63 } 71 }
64 72
65 visitAccessMember(AccessMember access) { 73 void visitAccessMember(AccessMember access) {
66 visit(access.object); 74 visit(access.object);
67 write('.${access.name}'); 75 write('.${access.name}');
68 } 76 }
69 77
70 visitAccessKeyed(AccessKeyed access) { 78 void visitAccessKeyed(AccessKeyed access) {
71 visit(access.object); 79 visit(access.object);
72 write('['); 80 write('[');
73 visit(access.key); 81 visit(access.key);
74 write(']'); 82 write(']');
75 } 83 }
76 84
77 visitCallScope(CallScope call) { 85 void visitCallScope(CallScope call) {
78 write(call.name); 86 write(call.name);
79 writeArguments(call.arguments); 87 writeArguments(call.arguments);
80 } 88 }
81 89
82 visitCallFunction(CallFunction call) { 90 void visitCallFunction(CallFunction call) {
91 write('(');
83 visit(call.function); 92 visit(call.function);
93 write(')');
84 writeArguments(call.arguments); 94 writeArguments(call.arguments);
85 } 95 }
86 96
87 visitCallMember(CallMember call) { 97 void visitCallMember(CallMember call) {
88 visit(call.object); 98 visit(call.object);
89 write('.${call.name}'); 99 write('.${call.name}');
90 writeArguments(call.arguments); 100 writeArguments(call.arguments);
91 } 101 }
92 102
93 visitPrefix(Prefix prefix) { 103 void visitPrefix(Prefix prefix) {
94 write('(${prefix.operation}'); 104 write('(${prefix.operation}');
95 visit(prefix.expression); 105 visit(prefix.expression);
96 write(')'); 106 write(')');
97 } 107 }
98 108
99 visitBinary(Binary binary) { 109 void visitBinary(Binary binary) {
100 write('('); 110 write('(');
101 visit(binary.left); 111 visit(binary.left);
102 write(binary.operation); 112 write(binary.operation);
103 visit(binary.right); 113 visit(binary.right);
104 write(')'); 114 write(')');
105 } 115 }
106 116
107 visitLiteralPrimitive(LiteralPrimitive literal) { 117 void visitLiteralPrimitive(LiteralPrimitive literal) {
108 write("${literal.value}"); 118 write("${literal.value}");
109 } 119 }
110 120
111 visitLiteralArray(LiteralArray literal) { 121 void visitLiteralArray(LiteralArray literal) {
112 write('['); 122 write('[');
113 for (int i = 0; i < literal.elements.length; i++) { 123 for (int i = 0; i < literal.elements.length; i++) {
114 if (i != 0) write(','); 124 if (i != 0) write(',');
115 visit(literal.elements[i]); 125 visit(literal.elements[i]);
116 } 126 }
117 write(']'); 127 write(']');
118 } 128 }
119 129
120 visitLiteralObject(LiteralObject literal) { 130 void visitLiteralObject(LiteralObject literal) {
121 write('{'); 131 write('{');
122 List<String> keys = literal.keys; 132 List<String> keys = literal.keys;
123 for (int i = 0; i < keys.length; i++) { 133 for (int i = 0; i < keys.length; i++) {
124 if (i != 0) write(','); 134 if (i != 0) write(',');
125 write("'${keys[i]}':"); 135 write("'${keys[i]}':");
126 visit(literal.values[i]); 136 visit(literal.values[i]);
127 } 137 }
128 write('}'); 138 write('}');
129 } 139 }
130 140
131 visitLiteralString(LiteralString literal) { 141 void visitLiteralString(LiteralString literal) {
132 String escaped = literal.value.replaceAll("'", "\\'"); 142 String escaped = literal.value.replaceAll("'", "\\'");
133 write("'$escaped'"); 143 write("'$escaped'");
134 } 144 }
135 } 145 }
OLDNEW
« no previous file with comments | « third_party/pkg/angular/lib/core/parser/tokens.dart ('k') | third_party/pkg/angular/lib/core/parser/utils.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698