| OLD | NEW |
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, 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 analyzer.src.task.dart; | 5 library analyzer.src.task.dart; |
| 6 | 6 |
| 7 import 'dart:collection'; | 7 import 'dart:collection'; |
| 8 import 'dart:math' as math; | 8 import 'dart:math' as math; |
| 9 | 9 |
| 10 import 'package:analyzer/src/generated/ast.dart'; | 10 import 'package:analyzer/src/generated/ast.dart'; |
| (...skipping 316 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 327 | 327 |
| 328 @override | 328 @override |
| 329 void internalPerform() { | 329 void internalPerform() { |
| 330 List<AnalysisError> errors = <AnalysisError>[]; | 330 List<AnalysisError> errors = <AnalysisError>[]; |
| 331 // | 331 // |
| 332 // Prepare inputs. | 332 // Prepare inputs. |
| 333 // | 333 // |
| 334 ClassElementImpl classElement = this.target; | 334 ClassElementImpl classElement = this.target; |
| 335 List<ConstructorElement> superConstructors = inputs[SUPER_CONSTRUCTORS]; | 335 List<ConstructorElement> superConstructors = inputs[SUPER_CONSTRUCTORS]; |
| 336 DartType superType = classElement.supertype; | 336 DartType superType = classElement.supertype; |
| 337 if (superType == null) { |
| 338 return; |
| 339 } |
| 337 ClassElement superElement = superType.element; | 340 ClassElement superElement = superType.element; |
| 338 // | 341 // |
| 339 // Shortcut for ClassElement(s) without implicit constructors. | 342 // Shortcut for ClassElement(s) without implicit constructors. |
| 340 // | 343 // |
| 341 if (superConstructors == null) { | 344 if (superConstructors == null) { |
| 342 outputs[CONSTRUCTORS] = classElement.constructors; | 345 outputs[CONSTRUCTORS] = classElement.constructors; |
| 343 outputs[CONSTRUCTORS_ERRORS] = AnalysisError.NO_ERRORS; | 346 outputs[CONSTRUCTORS_ERRORS] = AnalysisError.NO_ERRORS; |
| 344 return; | 347 return; |
| 345 } | 348 } |
| 346 // | 349 // |
| (...skipping 2255 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2602 @override | 2605 @override |
| 2603 bool moveNext() { | 2606 bool moveNext() { |
| 2604 if (_newSources.isEmpty) { | 2607 if (_newSources.isEmpty) { |
| 2605 return false; | 2608 return false; |
| 2606 } | 2609 } |
| 2607 currentTarget = _newSources.first; | 2610 currentTarget = _newSources.first; |
| 2608 _newSources.remove(currentTarget); | 2611 _newSources.remove(currentTarget); |
| 2609 return true; | 2612 return true; |
| 2610 } | 2613 } |
| 2611 } | 2614 } |
| OLD | NEW |