Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(253)

Side by Side Diff: pkg/analyzer/lib/src/generated/engine.dart

Issue 2093523002: fix #25573, add option to disable implicit dynamic (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Merge remote-tracking branch 'origin/master' into no_implicit_dynamic Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « pkg/analyzer/lib/src/dart/element/type.dart ('k') | pkg/analyzer/lib/src/generated/error.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 1297 matching lines...) Expand 10 before | Expand all | Expand 10 after
1308 * (they are always allowed in Dart 1.0 mode). 1308 * (they are always allowed in Dart 1.0 mode).
1309 * 1309 *
1310 * This option is experimental and subject to change. 1310 * This option is experimental and subject to change.
1311 */ 1311 */
1312 bool implicitCasts = true; 1312 bool implicitCasts = true;
1313 1313
1314 @override 1314 @override
1315 bool finerGrainedInvalidation = false; 1315 bool finerGrainedInvalidation = false;
1316 1316
1317 /** 1317 /**
1318 * A flag indicating whether implicit dynamic type is allowed, on by default.
1319 *
1320 * This flag can be used without necessarily enabling [strongMode], but it is
1321 * designed with strong mode's type inference in mind. Without type inference,
1322 * it will raise many errors. Also it does not provide type safety without
1323 * strong mode.
1324 *
1325 * This option is experimental and subject to change.
1326 */
1327 bool implicitDynamic = true;
1328
1329 /**
1318 * Initialize a newly created set of analysis options to have their default 1330 * Initialize a newly created set of analysis options to have their default
1319 * values. 1331 * values.
1320 */ 1332 */
1321 AnalysisOptionsImpl(); 1333 AnalysisOptionsImpl();
1322 1334
1323 /** 1335 /**
1324 * Initialize a newly created set of analysis options to have the same values 1336 * Initialize a newly created set of analysis options to have the same values
1325 * as those in the given set of analysis [options]. 1337 * as those in the given set of analysis [options].
1326 */ 1338 */
1327 AnalysisOptionsImpl.from(AnalysisOptions options) { 1339 AnalysisOptionsImpl.from(AnalysisOptions options) {
(...skipping 11 matching lines...) Expand all
1339 hint = options.hint; 1351 hint = options.hint;
1340 incremental = options.incremental; 1352 incremental = options.incremental;
1341 incrementalApi = options.incrementalApi; 1353 incrementalApi = options.incrementalApi;
1342 incrementalValidation = options.incrementalValidation; 1354 incrementalValidation = options.incrementalValidation;
1343 lint = options.lint; 1355 lint = options.lint;
1344 preserveComments = options.preserveComments; 1356 preserveComments = options.preserveComments;
1345 strongMode = options.strongMode; 1357 strongMode = options.strongMode;
1346 if (options is AnalysisOptionsImpl) { 1358 if (options is AnalysisOptionsImpl) {
1347 strongModeHints = options.strongModeHints; 1359 strongModeHints = options.strongModeHints;
1348 implicitCasts = options.implicitCasts; 1360 implicitCasts = options.implicitCasts;
1361 implicitDynamic = options.implicitDynamic;
1349 } 1362 }
1350 trackCacheDependencies = options.trackCacheDependencies; 1363 trackCacheDependencies = options.trackCacheDependencies;
1351 finerGrainedInvalidation = options.finerGrainedInvalidation; 1364 finerGrainedInvalidation = options.finerGrainedInvalidation;
1352 } 1365 }
1353 1366
1354 bool get analyzeFunctionBodies { 1367 bool get analyzeFunctionBodies {
1355 if (identical(analyzeFunctionBodiesPredicate, _analyzeAllFunctionBodies)) { 1368 if (identical(analyzeFunctionBodiesPredicate, _analyzeAllFunctionBodies)) {
1356 return true; 1369 return true;
1357 } else if (identical( 1370 } else if (identical(
1358 analyzeFunctionBodiesPredicate, _analyzeNoFunctionBodies)) { 1371 analyzeFunctionBodiesPredicate, _analyzeNoFunctionBodies)) {
(...skipping 1241 matching lines...) Expand 10 before | Expand all | Expand 10 after
2600 * The data that was created from the source. 2613 * The data that was created from the source.
2601 */ 2614 */
2602 final E data; 2615 final E data;
2603 2616
2604 /** 2617 /**
2605 * Initialize a newly created holder to associate the given [data] with the 2618 * Initialize a newly created holder to associate the given [data] with the
2606 * given [modificationTime]. 2619 * given [modificationTime].
2607 */ 2620 */
2608 TimestampedData(this.modificationTime, this.data); 2621 TimestampedData(this.modificationTime, this.data);
2609 } 2622 }
OLDNEW
« no previous file with comments | « pkg/analyzer/lib/src/dart/element/type.dart ('k') | pkg/analyzer/lib/src/generated/error.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698