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 analyzer.src.generated.engine; | 5 library analyzer.src.generated.engine; |
6 | 6 |
7 import 'dart:async'; | 7 import 'dart:async'; |
8 import 'dart:collection'; | 8 import 'dart:collection'; |
9 | 9 |
10 import 'package:analyzer/dart/ast/ast.dart'; | 10 import 'package:analyzer/dart/ast/ast.dart'; |
(...skipping 1126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1137 * Return `true` if analysis is to parse comments. | 1137 * Return `true` if analysis is to parse comments. |
1138 */ | 1138 */ |
1139 bool get preserveComments; | 1139 bool get preserveComments; |
1140 | 1140 |
1141 /** | 1141 /** |
1142 * Return `true` if strong mode analysis should be used. | 1142 * Return `true` if strong mode analysis should be used. |
1143 */ | 1143 */ |
1144 bool get strongMode; | 1144 bool get strongMode; |
1145 | 1145 |
1146 /** | 1146 /** |
1147 * Return `true` if dependencies between computed results should be tracked | |
1148 * by analysis cache. This option should only be set to `false` if analysis | |
1149 * is performed in batch mode, so that none of the input is ever changed | |
Brian Wilkerson
2016/06/08 17:48:03
"batch mode" has a special meaning for dartanalyze
| |
1150 * during the life time of the context. | |
1151 */ | |
1152 bool get trackCacheDependencies; | |
1153 | |
1154 /** | |
1147 * Return an integer encoding of the values of the options that need to be the | 1155 * Return an integer encoding of the values of the options that need to be the |
1148 * same across all of the contexts associated with partitions that are to be | 1156 * same across all of the contexts associated with partitions that are to be |
1149 * shared by a single analysis context. | 1157 * shared by a single analysis context. |
1150 */ | 1158 */ |
1151 int encodeCrossContextOptions(); | 1159 int encodeCrossContextOptions(); |
1152 | 1160 |
1153 /** | 1161 /** |
1154 * Set the values of the cross-context options to match those in the given set | 1162 * Set the values of the cross-context options to match those in the given set |
1155 * of [options]. | 1163 * of [options]. |
1156 */ | 1164 */ |
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1276 bool strongMode = false; | 1284 bool strongMode = false; |
1277 | 1285 |
1278 /** | 1286 /** |
1279 * A flag indicating whether strong-mode inference hints should be | 1287 * A flag indicating whether strong-mode inference hints should be |
1280 * used. This flag is not exposed in the interface, and should be | 1288 * used. This flag is not exposed in the interface, and should be |
1281 * replaced by something more general. | 1289 * replaced by something more general. |
1282 */ | 1290 */ |
1283 // TODO(leafp): replace this with something more general | 1291 // TODO(leafp): replace this with something more general |
1284 bool strongModeHints = false; | 1292 bool strongModeHints = false; |
1285 | 1293 |
1294 @override | |
1295 bool trackCacheDependencies = true; | |
1296 | |
1286 /** | 1297 /** |
1287 * Initialize a newly created set of analysis options to have their default | 1298 * Initialize a newly created set of analysis options to have their default |
1288 * values. | 1299 * values. |
1289 */ | 1300 */ |
1290 AnalysisOptionsImpl(); | 1301 AnalysisOptionsImpl(); |
1291 | 1302 |
1292 /** | 1303 /** |
1293 * Initialize a newly created set of analysis options to have the same values | 1304 * Initialize a newly created set of analysis options to have the same values |
1294 * as those in the given set of analysis [options]. | 1305 * as those in the given set of analysis [options]. |
1295 */ | 1306 */ |
(...skipping 12 matching lines...) Expand all Loading... | |
1308 hint = options.hint; | 1319 hint = options.hint; |
1309 incremental = options.incremental; | 1320 incremental = options.incremental; |
1310 incrementalApi = options.incrementalApi; | 1321 incrementalApi = options.incrementalApi; |
1311 incrementalValidation = options.incrementalValidation; | 1322 incrementalValidation = options.incrementalValidation; |
1312 lint = options.lint; | 1323 lint = options.lint; |
1313 preserveComments = options.preserveComments; | 1324 preserveComments = options.preserveComments; |
1314 strongMode = options.strongMode; | 1325 strongMode = options.strongMode; |
1315 if (options is AnalysisOptionsImpl) { | 1326 if (options is AnalysisOptionsImpl) { |
1316 strongModeHints = options.strongModeHints; | 1327 strongModeHints = options.strongModeHints; |
1317 } | 1328 } |
1329 trackCacheDependencies = options.trackCacheDependencies; | |
1318 } | 1330 } |
1319 | 1331 |
1320 bool get analyzeFunctionBodies { | 1332 bool get analyzeFunctionBodies { |
1321 if (identical(analyzeFunctionBodiesPredicate, _analyzeAllFunctionBodies)) { | 1333 if (identical(analyzeFunctionBodiesPredicate, _analyzeAllFunctionBodies)) { |
1322 return true; | 1334 return true; |
1323 } else if (identical( | 1335 } else if (identical( |
1324 analyzeFunctionBodiesPredicate, _analyzeNoFunctionBodies)) { | 1336 analyzeFunctionBodiesPredicate, _analyzeNoFunctionBodies)) { |
1325 return false; | 1337 return false; |
1326 } else { | 1338 } else { |
1327 throw new StateError('analyzeFunctionBodiesPredicate in use'); | 1339 throw new StateError('analyzeFunctionBodiesPredicate in use'); |
(...skipping 1235 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2563 * The data that was created from the source. | 2575 * The data that was created from the source. |
2564 */ | 2576 */ |
2565 final E data; | 2577 final E data; |
2566 | 2578 |
2567 /** | 2579 /** |
2568 * Initialize a newly created holder to associate the given [data] with the | 2580 * Initialize a newly created holder to associate the given [data] with the |
2569 * given [modificationTime]. | 2581 * given [modificationTime]. |
2570 */ | 2582 */ |
2571 TimestampedData(this.modificationTime, this.data); | 2583 TimestampedData(this.modificationTime, this.data); |
2572 } | 2584 } |
OLD | NEW |