| OLD | NEW |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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 edit.domain; | 5 library edit.domain; |
| 6 | 6 |
| 7 import 'dart:async'; | 7 import 'dart:async'; |
| 8 | 8 |
| 9 import 'package:analysis_server/plugin/edit/assist/assist_core.dart'; | 9 import 'package:analysis_server/plugin/edit/assist/assist_core.dart'; |
| 10 import 'package:analysis_server/plugin/edit/assist/assist_dart.dart'; | 10 import 'package:analysis_server/plugin/edit/assist/assist_dart.dart'; |
| (...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 181 List<AnalysisErrorFixes> errorFixesList = <AnalysisErrorFixes>[]; | 181 List<AnalysisErrorFixes> errorFixesList = <AnalysisErrorFixes>[]; |
| 182 if (server.options.enableNewAnalysisDriver) { | 182 if (server.options.enableNewAnalysisDriver) { |
| 183 AnalysisResult result = await server.getAnalysisResult(file); | 183 AnalysisResult result = await server.getAnalysisResult(file); |
| 184 if (result != null) { | 184 if (result != null) { |
| 185 CompilationUnit unit = result.unit; | 185 CompilationUnit unit = result.unit; |
| 186 LineInfo lineInfo = result.lineInfo; | 186 LineInfo lineInfo = result.lineInfo; |
| 187 int requestLine = lineInfo.getLocation(offset).lineNumber; | 187 int requestLine = lineInfo.getLocation(offset).lineNumber; |
| 188 for (engine.AnalysisError error in result.errors) { | 188 for (engine.AnalysisError error in result.errors) { |
| 189 int errorLine = lineInfo.getLocation(error.offset).lineNumber; | 189 int errorLine = lineInfo.getLocation(error.offset).lineNumber; |
| 190 if (errorLine == requestLine) { | 190 if (errorLine == requestLine) { |
| 191 var context = new _DartFixContextImpl( | 191 var context = new _DartFixContextImpl(server.resourceProvider, |
| 192 server.resourceProvider, unit.element.context, unit, error); | 192 (String name) async { |
| 193 // TODO(scheglov) implement for the new driver |
| 194 return []; |
| 195 }, unit.element.context, unit, error); |
| 193 List<Fix> fixes = | 196 List<Fix> fixes = |
| 194 await new DefaultFixContributor().internalComputeFixes(context); | 197 await new DefaultFixContributor().internalComputeFixes(context); |
| 195 if (fixes.isNotEmpty) { | 198 if (fixes.isNotEmpty) { |
| 196 AnalysisError serverError = | 199 AnalysisError serverError = |
| 197 newAnalysisError_fromEngine(lineInfo, error); | 200 newAnalysisError_fromEngine(lineInfo, error); |
| 198 AnalysisErrorFixes errorFixes = | 201 AnalysisErrorFixes errorFixes = |
| 199 new AnalysisErrorFixes(serverError); | 202 new AnalysisErrorFixes(serverError); |
| 200 errorFixesList.add(errorFixes); | 203 errorFixesList.add(errorFixes); |
| 201 fixes.forEach((fix) { | 204 fixes.forEach((fix) { |
| 202 errorFixes.fixes.add(fix.change); | 205 errorFixes.fixes.add(fix.change); |
| (...skipping 287 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 490 } | 493 } |
| 491 | 494 |
| 492 /** | 495 /** |
| 493 * And implementation of [DartFixContext]. | 496 * And implementation of [DartFixContext]. |
| 494 */ | 497 */ |
| 495 class _DartFixContextImpl implements DartFixContext { | 498 class _DartFixContextImpl implements DartFixContext { |
| 496 @override | 499 @override |
| 497 final ResourceProvider resourceProvider; | 500 final ResourceProvider resourceProvider; |
| 498 | 501 |
| 499 @override | 502 @override |
| 503 final GetTopLevelDeclarations getTopLevelDeclarations; |
| 504 |
| 505 @override |
| 500 final engine.AnalysisContext analysisContext; | 506 final engine.AnalysisContext analysisContext; |
| 501 | 507 |
| 502 @override | 508 @override |
| 503 final CompilationUnit unit; | 509 final CompilationUnit unit; |
| 504 | 510 |
| 505 @override | 511 @override |
| 506 final engine.AnalysisError error; | 512 final engine.AnalysisError error; |
| 507 | 513 |
| 508 _DartFixContextImpl( | 514 _DartFixContextImpl(this.resourceProvider, this.getTopLevelDeclarations, |
| 509 this.resourceProvider, this.analysisContext, this.unit, this.error); | 515 this.analysisContext, this.unit, this.error); |
| 510 } | 516 } |
| 511 | 517 |
| 512 /** | 518 /** |
| 513 * An object managing a single [Refactoring] instance. | 519 * An object managing a single [Refactoring] instance. |
| 514 * | 520 * |
| 515 * The instance is identified by its kind, file, offset and length. | 521 * The instance is identified by its kind, file, offset and length. |
| 516 * It is initialized when the a set of parameters is given for the first time. | 522 * It is initialized when the a set of parameters is given for the first time. |
| 517 * All subsequent requests are performed on this [Refactoring] instance. | 523 * All subsequent requests are performed on this [Refactoring] instance. |
| 518 * | 524 * |
| 519 * Once new set of parameters is received, the previous [Refactoring] instance | 525 * Once new set of parameters is received, the previous [Refactoring] instance |
| (...skipping 433 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 953 } | 959 } |
| 954 return new RefactoringStatus(); | 960 return new RefactoringStatus(); |
| 955 } | 961 } |
| 956 } | 962 } |
| 957 | 963 |
| 958 /** | 964 /** |
| 959 * [_RefactoringManager] throws instances of this class internally to stop | 965 * [_RefactoringManager] throws instances of this class internally to stop |
| 960 * processing in a manager that was reset. | 966 * processing in a manager that was reset. |
| 961 */ | 967 */ |
| 962 class _ResetError {} | 968 class _ResetError {} |
| OLD | NEW |