Chromium Code Reviews| Index: sdk/lib/_internal/compiler/implementation/constants.dart |
| diff --git a/sdk/lib/_internal/compiler/implementation/constants.dart b/sdk/lib/_internal/compiler/implementation/constants.dart |
| index bca652405c49be6b45649dac303a38a077fdd068..ae0c3be9b5873ce6d6b9e3810ce0d51a85429f8b 100644 |
| --- a/sdk/lib/_internal/compiler/implementation/constants.dart |
| +++ b/sdk/lib/_internal/compiler/implementation/constants.dart |
| @@ -295,6 +295,10 @@ class StringConstant extends PrimitiveConstant { |
| int get length => value.length; |
| accept(ConstantVisitor visitor) => visitor.visitString(this); |
| + |
| + String toString() { |
|
ahe
2013/09/30 11:05:26
Nice with toString implementation, but I suggest t
Johnni Winther
2013/10/01 11:21:48
Done.
|
| + return "'" + value.slowToString() + "'"; |
|
ahe
2013/09/30 11:05:26
Use string interpolation, please.
Johnni Winther
2013/10/01 11:21:48
Done.
|
| + } |
| } |
| abstract class ObjectConstant extends Constant { |
| @@ -323,6 +327,8 @@ class TypeConstant extends ObjectConstant { |
| List<Constant> getDependencies() => const <Constant>[]; |
| accept(ConstantVisitor visitor) => visitor.visitType(this); |
| + |
| + String toString() => '$representedType'; |
| } |
| class ListConstant extends ObjectConstant { |
| @@ -362,6 +368,17 @@ class ListConstant extends ObjectConstant { |
| int get length => entries.length; |
| accept(ConstantVisitor visitor) => visitor.visitList(this); |
| + |
| + String toString() { |
| + StringBuffer sb = new StringBuffer(); |
| + sb.write('['); |
| + for (int i = 0 ; i < entries.length ; i++) { |
| + if (i > 0) sb.write(','); |
| + sb.write(entries[i]); |
| + } |
| + sb.write(']'); |
| + return sb.toString(); |
| + } |
| } |
| class MapConstant extends ObjectConstant { |
| @@ -437,6 +454,19 @@ class MapConstant extends ObjectConstant { |
| int get length => keys.length; |
| accept(ConstantVisitor visitor) => visitor.visitMap(this); |
| + |
| + String toString() { |
| + StringBuffer sb = new StringBuffer(); |
| + sb.write('{'); |
| + for (int i = 0 ; i < keys.entries.length ; i++) { |
| + if (i > 0) sb.write(','); |
| + sb.write(keys.entries[i]); |
| + sb.write(':'); |
| + sb.write(values[i]); |
| + } |
| + sb.write('}'); |
| + return sb.toString(); |
| + } |
| } |
| class InterceptorConstant extends Constant { |
| @@ -460,6 +490,10 @@ class InterceptorConstant extends Constant { |
| accept(ConstantVisitor visitor) => visitor.visitInterceptor(this); |
| DartType computeType(Compiler compiler) => compiler.types.dynamicType; |
| + |
| + String toString() { |
| + return 'InterceptorConstant($dispatchedType)'; |
| + } |
| } |
| class ConstructedConstant extends ObjectConstant { |
| @@ -510,4 +544,20 @@ class ConstructedConstant extends ObjectConstant { |
| }, includeSuperAndInjectedMembers: true); |
| return result; |
| } |
| + |
| + String toString() { |
| + StringBuffer sb = new StringBuffer(); |
| + sb.write(type); |
| + sb.write('('); |
| + int i = 0; |
| + fieldElements.forEach((Element field, Constant value) { |
| + if (i > 0) sb.write(','); |
| + sb.write(field.name.slowToString()); |
| + sb.write('='); |
| + sb.write(value); |
| + i++; |
| + }); |
| + sb.write(')'); |
| + return sb.toString(); |
| + } |
| } |