| Index: lib/src/info.dart
|
| diff --git a/lib/src/info.dart b/lib/src/info.dart
|
| index 2ddd34f835bb87edff940f6006a9bc212fb6b3d3..3db9e965f3f091cc0481db5ae31d882e4684b0f6 100644
|
| --- a/lib/src/info.dart
|
| +++ b/lib/src/info.dart
|
| @@ -10,6 +10,7 @@ import 'dart:mirrors';
|
|
|
| import 'package:analyzer/src/generated/ast.dart';
|
| import 'package:analyzer/src/generated/element.dart';
|
| +import 'package:analyzer/src/generated/error.dart' as analyzer;
|
| import 'package:analyzer/src/generated/scanner.dart'
|
| show Token, TokenType, SyntheticStringToken;
|
| import 'package:logging/logging.dart' show Level;
|
| @@ -730,3 +731,17 @@ final List<Type> infoTypes = () {
|
| return new List<Type>.from(allTypes.map((mirror) => mirror.reflectedType))
|
| ..sort((t1, t2) => '$t1'.compareTo('$t2'));
|
| }();
|
| +
|
| +class AnalyzerError extends Message {
|
| + factory AnalyzerError.from(analyzer.AnalysisError error) {
|
| + var severity = error.errorCode.type.severity;
|
| + var isError = severity == analyzer.ErrorSeverity.ERROR;
|
| + var level = isError ? Level.SEVERE : Level.WARNING;
|
| + int begin = error.offset;
|
| + int end = begin + error.length;
|
| + return new AnalyzerError(error.message, level, begin, end);
|
| + }
|
| +
|
| + const AnalyzerError(String message, Level level, int begin, int end)
|
| + : super('[from analyzer]: $message', level, begin, end);
|
| +}
|
|
|