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

Side by Side Diff: pkg/compiler/lib/src/constants/constructors.dart

Issue 1916053003: Add toStructuredText to ConstantExpression and align method names with ConstantValue (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: dartfmt Created 4 years, 7 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
« no previous file with comments | « pkg/compiler/lib/src/compiler.dart ('k') | pkg/compiler/lib/src/constants/expressions.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library dart2js.constants.constructors; 5 library dart2js.constants.constructors;
6 6
7 import '../dart_types.dart'; 7 import '../dart_types.dart';
8 import '../elements/elements.dart' show FieldElement; 8 import '../elements/elements.dart' show FieldElement;
9 import '../universe/call_structure.dart' show CallStructure; 9 import '../universe/call_structure.dart' show CallStructure;
10 import '../util/util.dart'; 10 import '../util/util.dart';
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
92 return type == other.type && 92 return type == other.type &&
93 superConstructorInvocation == other.superConstructorInvocation && 93 superConstructorInvocation == other.superConstructorInvocation &&
94 mapEquals(defaultValues, other.defaultValues) && 94 mapEquals(defaultValues, other.defaultValues) &&
95 mapEquals(fieldMap, other.fieldMap); 95 mapEquals(fieldMap, other.fieldMap);
96 } 96 }
97 97
98 String toString() { 98 String toString() {
99 StringBuffer sb = new StringBuffer(); 99 StringBuffer sb = new StringBuffer();
100 sb.write("{'type': $type"); 100 sb.write("{'type': $type");
101 defaultValues.forEach((key, ConstantExpression expression) { 101 defaultValues.forEach((key, ConstantExpression expression) {
102 sb.write(",\n 'default:${key}': ${expression.getText()}"); 102 sb.write(",\n 'default:${key}': ${expression.toDartText()}");
103 }); 103 });
104 fieldMap.forEach((FieldElement field, ConstantExpression expression) { 104 fieldMap.forEach((FieldElement field, ConstantExpression expression) {
105 sb.write(",\n 'field:${field}': ${expression.getText()}"); 105 sb.write(",\n 'field:${field}': ${expression.toDartText()}");
106 }); 106 });
107 if (superConstructorInvocation != null) { 107 if (superConstructorInvocation != null) {
108 sb.write(",\n 'constructor: ${superConstructorInvocation.getText()}"); 108 sb.write(",\n 'constructor: ${superConstructorInvocation.toDartText()}");
109 } 109 }
110 sb.write("}"); 110 sb.write("}");
111 return sb.toString(); 111 return sb.toString();
112 } 112 }
113 113
114 static bool mapEquals(Map map1, Map map2) { 114 static bool mapEquals(Map map1, Map map2) {
115 if (map1.length != map1.length) return false; 115 if (map1.length != map1.length) return false;
116 for (var key in map1.keys) { 116 for (var key in map1.keys) {
117 if (map1[key] != map2[key]) { 117 if (map1[key] != map2[key]) {
118 return false; 118 return false;
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
182 if (other is! RedirectingGenerativeConstantConstructor) return false; 182 if (other is! RedirectingGenerativeConstantConstructor) return false;
183 return thisConstructorInvocation == other.thisConstructorInvocation && 183 return thisConstructorInvocation == other.thisConstructorInvocation &&
184 GenerativeConstantConstructor.mapEquals( 184 GenerativeConstantConstructor.mapEquals(
185 defaultValues, other.defaultValues); 185 defaultValues, other.defaultValues);
186 } 186 }
187 187
188 String toString() { 188 String toString() {
189 StringBuffer sb = new StringBuffer(); 189 StringBuffer sb = new StringBuffer();
190 sb.write("{'type': ${thisConstructorInvocation.type}"); 190 sb.write("{'type': ${thisConstructorInvocation.type}");
191 defaultValues.forEach((key, ConstantExpression expression) { 191 defaultValues.forEach((key, ConstantExpression expression) {
192 sb.write(",\n 'default:${key}': ${expression.getText()}"); 192 sb.write(",\n 'default:${key}': ${expression.toDartText()}");
193 }); 193 });
194 sb.write(",\n 'constructor': ${thisConstructorInvocation.getText()}"); 194 sb.write(",\n 'constructor': ${thisConstructorInvocation.toDartText()}");
195 sb.write("}"); 195 sb.write("}");
196 return sb.toString(); 196 return sb.toString();
197 } 197 }
198 } 198 }
199 199
200 /// A redirecting factory constant constructor. 200 /// A redirecting factory constant constructor.
201 class RedirectingFactoryConstantConstructor implements ConstantConstructor { 201 class RedirectingFactoryConstantConstructor implements ConstantConstructor {
202 final ConstructedConstantExpression targetConstructorInvocation; 202 final ConstructedConstantExpression targetConstructorInvocation;
203 203
204 RedirectingFactoryConstantConstructor(this.targetConstructorInvocation); 204 RedirectingFactoryConstantConstructor(this.targetConstructorInvocation);
(...skipping 25 matching lines...) Expand all
230 230
231 bool operator ==(other) { 231 bool operator ==(other) {
232 if (identical(this, other)) return true; 232 if (identical(this, other)) return true;
233 if (other is! RedirectingFactoryConstantConstructor) return false; 233 if (other is! RedirectingFactoryConstantConstructor) return false;
234 return targetConstructorInvocation == other.targetConstructorInvocation; 234 return targetConstructorInvocation == other.targetConstructorInvocation;
235 } 235 }
236 236
237 String toString() { 237 String toString() {
238 StringBuffer sb = new StringBuffer(); 238 StringBuffer sb = new StringBuffer();
239 sb.write("{"); 239 sb.write("{");
240 sb.write("'constructor': ${targetConstructorInvocation.getText()}"); 240 sb.write("'constructor': ${targetConstructorInvocation.toDartText()}");
241 sb.write("}"); 241 sb.write("}");
242 return sb.toString(); 242 return sb.toString();
243 } 243 }
244 } 244 }
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/compiler.dart ('k') | pkg/compiler/lib/src/constants/expressions.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698