| Index: pkg/front_end/lib/src/fasta/parser/listener.dart
|
| diff --git a/pkg/front_end/lib/src/fasta/parser/listener.dart b/pkg/front_end/lib/src/fasta/parser/listener.dart
|
| index 9f54a87c6185aedcdd0c54d1e3f14c51e390656b..612f4d7449da01a5d59a85a4e843da8e6e64ace7 100644
|
| --- a/pkg/front_end/lib/src/fasta/parser/listener.dart
|
| +++ b/pkg/front_end/lib/src/fasta/parser/listener.dart
|
| @@ -4,11 +4,12 @@
|
|
|
| library fasta.parser.listener;
|
|
|
| +import '../fasta_codes.dart' show FastaMessage;
|
| +
|
| import '../scanner/token.dart' show BeginGroupToken, SymbolToken, Token;
|
|
|
| import '../util/link.dart' show Link;
|
|
|
| -import 'error_kind.dart' show ErrorKind;
|
| import 'package:front_end/src/fasta/scanner/precedence.dart' show RECOVERY_INFO;
|
| import 'parser.dart' show FormalParameterType;
|
|
|
| @@ -28,6 +29,8 @@ import 'identifier_context.dart' show IdentifierContext;
|
| class Listener {
|
| final List<ParserError> recoverableErrors = <ParserError>[];
|
|
|
| + Uri get uri => null;
|
| +
|
| void logEvent(String name) {}
|
|
|
| set suppressParseErrors(bool value) {}
|
| @@ -1006,14 +1009,13 @@ class Listener {
|
| /// `null`. In the latter case, the parser simply skips to EOF which will
|
| /// often result in additional parser errors as the parser returns from its
|
| /// recursive state.
|
| - Token handleUnrecoverableError(Token token, ErrorKind kind, Map arguments) {
|
| - throw new ParserError.fromTokens(token, token, kind, arguments);
|
| + Token handleUnrecoverableError(Token token, FastaMessage message) {
|
| + throw new ParserError.fromTokens(token, token, message);
|
| }
|
|
|
| /// The parser noticed a syntax error, but was able to recover from it.
|
| - void handleRecoverableError(Token token, ErrorKind kind, Map arguments) {
|
| - recoverableErrors
|
| - .add(new ParserError.fromTokens(token, token, kind, arguments));
|
| + void handleRecoverableError(Token token, FastaMessage message) {
|
| + recoverableErrors.add(new ParserError.fromTokens(token, token, message));
|
| }
|
|
|
| void handleScript(Token token) {
|
| @@ -1036,14 +1038,12 @@ class ParserError {
|
| /// Character offset from the beginning of file where this error ends.
|
| final int endOffset;
|
|
|
| - final ErrorKind kind;
|
| -
|
| - final Map arguments;
|
| + final FastaMessage message;
|
|
|
| - ParserError(this.beginOffset, this.endOffset, this.kind, this.arguments);
|
| + ParserError(this.beginOffset, this.endOffset, this.message);
|
|
|
| - ParserError.fromTokens(Token begin, Token end, ErrorKind kind, Map arguments)
|
| - : this(begin.charOffset, end.charOffset + end.charCount, kind, arguments);
|
| + ParserError.fromTokens(Token begin, Token end, FastaMessage message)
|
| + : this(begin.charOffset, end.charOffset + end.charCount, message);
|
|
|
| - String toString() => "@${beginOffset}: $kind $arguments";
|
| + String toString() => "@${beginOffset}: ${message.message}\n${message.tip}";
|
| }
|
|
|