| Index: sdk/lib/core/errors.dart
|
| diff --git a/sdk/lib/core/errors.dart b/sdk/lib/core/errors.dart
|
| index 060eba7c5a82d39a742a65b07a8f4896ab5ea331..f61cdfe07f815bcdc596f8851d782cd77d486edc 100644
|
| --- a/sdk/lib/core/errors.dart
|
| +++ b/sdk/lib/core/errors.dart
|
| @@ -5,8 +5,6 @@
|
| part of dart.core;
|
|
|
| class Error {
|
| - const Error();
|
| -
|
| /**
|
| * Safely convert a value to a [String] description.
|
| *
|
| @@ -32,38 +30,40 @@ class Error {
|
| }
|
|
|
| external static String _objectToString(Object object);
|
| +
|
| + external StackTrace get stackTrace;
|
| }
|
|
|
| /**
|
| * Error thrown by the runtime system when an assert statement fails.
|
| */
|
| -class AssertionError implements Error {
|
| +class AssertionError extends Error {
|
| }
|
|
|
| /**
|
| * Error thrown by the runtime system when a type assertion fails.
|
| */
|
| -class TypeError implements AssertionError {
|
| +class TypeError extends AssertionError {
|
| }
|
|
|
| /**
|
| * Error thrown by the runtime system when a cast operation fails.
|
| */
|
| -class CastError implements Error {
|
| +class CastError extends Error {
|
| }
|
|
|
| /**
|
| * Error thrown when attempting to throw [:null:].
|
| */
|
| -class NullThrownError implements Error {
|
| - const NullThrownError();
|
| +class NullThrownError extends Error {
|
| + NullThrownError();
|
| String toString() => "Throw of null.";
|
| }
|
|
|
| /**
|
| * Error thrown when a function is passed an unacceptable argument.
|
| */
|
| -class ArgumentError implements Error {
|
| +class ArgumentError extends Error {
|
| final message;
|
|
|
| /** The [message] describes the erroneous argument. */
|
| @@ -110,21 +110,21 @@ class RangeError extends ArgumentError {
|
| * of a switch) without meeting a break or similar end of the control
|
| * flow.
|
| */
|
| -class FallThroughError implements Error {
|
| - const FallThroughError();
|
| +class FallThroughError extends Error {
|
| + FallThroughError();
|
| }
|
|
|
|
|
| -class AbstractClassInstantiationError implements Error {
|
| +class AbstractClassInstantiationError extends Error {
|
| final String _className;
|
| - const AbstractClassInstantiationError(String this._className);
|
| + AbstractClassInstantiationError(String this._className);
|
| String toString() => "Cannot instantiate abstract class: '$_className'";
|
| }
|
|
|
| /**
|
| * Error thrown by the default implementation of [:noSuchMethod:] on [Object].
|
| */
|
| -class NoSuchMethodError implements Error {
|
| +class NoSuchMethodError extends Error {
|
| final Object _receiver;
|
| final String _memberName;
|
| final List _arguments;
|
| @@ -145,11 +145,11 @@ class NoSuchMethodError implements Error {
|
| * method with the same name on the receiver, if available. This is
|
| * the method that would have been called if the parameters had matched.
|
| */
|
| - const NoSuchMethodError(Object this._receiver,
|
| - String this._memberName,
|
| - List this._arguments,
|
| - Map<String,dynamic> this._namedArguments,
|
| - [List existingArgumentNames = null])
|
| + NoSuchMethodError(Object this._receiver,
|
| + String this._memberName,
|
| + List this._arguments,
|
| + Map<String,dynamic> this._namedArguments,
|
| + [List existingArgumentNames = null])
|
| : this._existingArgumentNames = existingArgumentNames;
|
|
|
| external String toString();
|
| @@ -162,7 +162,7 @@ class NoSuchMethodError implements Error {
|
| * This [Error] is thrown when an instance cannot implement one of the methods
|
| * in its signature.
|
| */
|
| -class UnsupportedError implements Error {
|
| +class UnsupportedError extends Error {
|
| final String message;
|
| UnsupportedError(this.message);
|
| String toString() => "Unsupported operation: $message";
|
| @@ -179,7 +179,7 @@ class UnsupportedError implements Error {
|
| * an [UnsupportedError] instead. This error is only intended for
|
| * use during development.
|
| */
|
| -class UnimplementedError implements UnsupportedError {
|
| +class UnimplementedError extends Error implements UnsupportedError {
|
| final String message;
|
| UnimplementedError([String this.message]);
|
| String toString() => (this.message != null
|
| @@ -194,7 +194,7 @@ class UnimplementedError implements UnsupportedError {
|
| * This is a generic error used for a variety of different erroneous
|
| * actions. The message should be descriptive.
|
| */
|
| -class StateError implements Error {
|
| +class StateError extends Error {
|
| final String message;
|
| StateError(this.message);
|
| String toString() => "Bad state: $message";
|
| @@ -208,11 +208,11 @@ class StateError implements Error {
|
| * ([Iterable] or similar collection of values) should declare which operations
|
| * are allowed during an iteration.
|
| */
|
| -class ConcurrentModificationError implements Error {
|
| +class ConcurrentModificationError extends Error {
|
| /** The object that was modified in an incompatible way. */
|
| final Object modifiedObject;
|
|
|
| - const ConcurrentModificationError([this.modifiedObject]);
|
| + ConcurrentModificationError([this.modifiedObject]);
|
|
|
| String toString() {
|
| if (modifiedObject == null) {
|
| @@ -227,12 +227,16 @@ class ConcurrentModificationError implements Error {
|
| class OutOfMemoryError implements Error {
|
| const OutOfMemoryError();
|
| String toString() => "Out of Memory";
|
| +
|
| + StackTrace get stackTrace => null;
|
| }
|
|
|
|
|
| class StackOverflowError implements Error {
|
| const StackOverflowError();
|
| String toString() => "Stack Overflow";
|
| +
|
| + StackTrace get stackTrace => null;
|
| }
|
|
|
| /**
|
| @@ -242,9 +246,9 @@ class StackOverflowError implements Error {
|
| * the first time it is read. If evaluating the initializer expression causes
|
| * another read of the variable, this error is thrown.
|
| */
|
| -class CyclicInitializationError implements Error {
|
| +class CyclicInitializationError extends Error {
|
| final String variableName;
|
| - const CyclicInitializationError([this.variableName]);
|
| + CyclicInitializationError([this.variableName]);
|
| String toString() => variableName == null
|
| ? "Reading static variable during its initialization"
|
| : "Reading static variable '$variableName' during its initialization";
|
|
|