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.driver; | 5 library analyzer.src.task.driver; |
6 | 6 |
7 import 'dart:async'; | 7 import 'dart:async'; |
8 import 'dart:collection'; | 8 import 'dart:collection'; |
9 | 9 |
10 import 'package:analyzer/exception/exception.dart'; | 10 import 'package:analyzer/exception/exception.dart'; |
11 import 'package:analyzer/src/context/cache.dart'; | 11 import 'package:analyzer/src/context/cache.dart'; |
12 import 'package:analyzer/src/generated/engine.dart'; | 12 import 'package:analyzer/src/generated/engine.dart'; |
13 import 'package:analyzer/src/generated/resolver.dart'; | 13 import 'package:analyzer/src/generated/resolver.dart'; |
14 import 'package:analyzer/src/generated/utilities_general.dart'; | 14 import 'package:analyzer/src/generated/utilities_general.dart'; |
15 import 'package:analyzer/src/task/inputs.dart'; | 15 import 'package:analyzer/src/task/inputs.dart'; |
16 import 'package:analyzer/src/task/manager.dart'; | 16 import 'package:analyzer/src/task/manager.dart'; |
17 import 'package:analyzer/task/model.dart'; | 17 import 'package:analyzer/task/model.dart'; |
18 | 18 |
| 19 final PerformanceTag _taskDriverTag = |
| 20 PerformanceStatistics.analyzer.createChild('taskDriver'); |
| 21 |
19 final PerformanceTag analysisDriverProcessOutputs = | 22 final PerformanceTag analysisDriverProcessOutputs = |
20 new PerformanceTag('AnalysisDriver.processOutputs'); | 23 _taskDriverTag.createChild('processOutputs'); |
21 | 24 |
22 final PerformanceTag workOrderMoveNextPerformanceTag = | 25 final PerformanceTag workOrderMoveNextPerformanceTag = |
23 new PerformanceTag('WorkOrder.moveNext'); | 26 _taskDriverTag.createChild('workOrderMoveNext'); |
24 | 27 |
25 /** | 28 /** |
26 * An object that is used to cause analysis to be performed until all of the | 29 * An object that is used to cause analysis to be performed until all of the |
27 * required analysis information has been computed. | 30 * required analysis information has been computed. |
28 */ | 31 */ |
29 class AnalysisDriver { | 32 class AnalysisDriver { |
30 /** | 33 /** |
31 * The task manager used to figure out how to compute analysis results. | 34 * The task manager used to figure out how to compute analysis results. |
32 */ | 35 */ |
33 final TaskManager taskManager; | 36 final TaskManager taskManager; |
(...skipping 838 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
872 final TaskManager taskManager; | 875 final TaskManager taskManager; |
873 | 876 |
874 _WorkOrderDependencyWalker(this.taskManager, WorkItem startingNode) | 877 _WorkOrderDependencyWalker(this.taskManager, WorkItem startingNode) |
875 : super(startingNode); | 878 : super(startingNode); |
876 | 879 |
877 @override | 880 @override |
878 WorkItem getNextInput(WorkItem node, List<WorkItem> skipInputs) { | 881 WorkItem getNextInput(WorkItem node, List<WorkItem> skipInputs) { |
879 return node.gatherInputs(taskManager, skipInputs); | 882 return node.gatherInputs(taskManager, skipInputs); |
880 } | 883 } |
881 } | 884 } |
OLD | NEW |