| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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 barback.errors; | 5 library barback.errors; |
| 6 | 6 |
| 7 import 'package:stack_trace/stack_trace.dart'; | 7 import 'package:stack_trace/stack_trace.dart'; |
| 8 | 8 |
| 9 import 'asset/asset_id.dart'; | 9 import 'asset/asset_id.dart'; |
| 10 import 'transformer/wrapping_aggregate_transformer.dart'; | 10 import 'transformer/wrapping_aggregate_transformer.dart'; |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 108 String toString() => "Transform $transform emitted $id, which wasn't in the " | 108 String toString() => "Transform $transform emitted $id, which wasn't in the " |
| 109 "same package (${transform.primaryId.package})."; | 109 "same package (${transform.primaryId.package})."; |
| 110 } | 110 } |
| 111 | 111 |
| 112 /// Base class for an error that wraps another. | 112 /// Base class for an error that wraps another. |
| 113 abstract class _WrappedException implements BarbackException { | 113 abstract class _WrappedException implements BarbackException { |
| 114 /// The wrapped exception. | 114 /// The wrapped exception. |
| 115 final error; | 115 final error; |
| 116 final Chain stackTrace; | 116 final Chain stackTrace; |
| 117 | 117 |
| 118 String get message => "$_message: ${getErrorMessage(error)}"; |
| 119 |
| 120 String get _message; |
| 121 |
| 118 _WrappedException(error, StackTrace stackTrace) | 122 _WrappedException(error, StackTrace stackTrace) |
| 119 : this.error = error, | 123 : this.error = error, |
| 120 this.stackTrace = _getChain(error, stackTrace); | 124 this.stackTrace = _getChain(error, stackTrace); |
| 121 | 125 |
| 122 String get _message; | |
| 123 | |
| 124 String toString() { | 126 String toString() { |
| 125 var result = "$_message: $error"; | 127 var result = message; |
| 126 if (stackTrace != null) result = "$result\n${stackTrace.terse}"; | 128 if (stackTrace != null) result = "$result\n${stackTrace.terse}"; |
| 127 return result; | 129 return result; |
| 128 } | 130 } |
| 129 } | 131 } |
| 130 | 132 |
| 131 /// Returns the stack chain for [error] and [stackTrace]. | 133 /// Returns the stack chain for [error] and [stackTrace]. |
| 132 Chain _getChain(error, StackTrace stackTrace) { | 134 Chain _getChain(error, StackTrace stackTrace) { |
| 133 if (error is Error && stackTrace == null) stackTrace = error.stackTrace; | 135 if (error is Error && stackTrace == null) stackTrace = error.stackTrace; |
| 134 if (stackTrace != null) return new Chain.forTrace(stackTrace); | 136 if (stackTrace != null) return new Chain.forTrace(stackTrace); |
| 135 return null; | 137 return null; |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 181 | 183 |
| 182 bool operator==(other) => | 184 bool operator==(other) => |
| 183 other is TransformInfo && | 185 other is TransformInfo && |
| 184 other.transformer == transformer && | 186 other.transformer == transformer && |
| 185 other.primaryId == primaryId; | 187 other.primaryId == primaryId; |
| 186 | 188 |
| 187 int get hashCode => transformer.hashCode ^ primaryId.hashCode; | 189 int get hashCode => transformer.hashCode ^ primaryId.hashCode; |
| 188 | 190 |
| 189 String toString() => "$transformer on $primaryId"; | 191 String toString() => "$transformer on $primaryId"; |
| 190 } | 192 } |
| OLD | NEW |