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

Side by Side Diff: pkg/compiler/lib/src/compiler.dart

Issue 1151163004: Implementation of null-aware operators. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 5 years, 7 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/compiler/lib/src/apiimpl.dart ('k') | pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.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) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, 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 part of dart2js; 5 part of dart2js;
6 6
7 /** 7 /**
8 * If true, print a warning for each method that was resolved, but not 8 * If true, print a warning for each method that was resolved, but not
9 * compiled. 9 * compiled.
10 */ 10 */
(...skipping 763 matching lines...) Expand 10 before | Expand all | Expand 10 after
774 final bool suppressWarnings; 774 final bool suppressWarnings;
775 final bool fatalWarnings; 775 final bool fatalWarnings;
776 776
777 /// If `true`, some values are cached for reuse in incremental compilation. 777 /// If `true`, some values are cached for reuse in incremental compilation.
778 /// Incremental compilation is basically calling [run] more than once. 778 /// Incremental compilation is basically calling [run] more than once.
779 final bool hasIncrementalSupport; 779 final bool hasIncrementalSupport;
780 780
781 /// If `true` native extension syntax is supported by the frontend. 781 /// If `true` native extension syntax is supported by the frontend.
782 final bool allowNativeExtensions; 782 final bool allowNativeExtensions;
783 783
784 /// Temporary flag to enable `?.`, `??`, and `??=` until it becomes part of
785 /// the spec.
786 final bool enableNullAwareOperators;
787
784 /// Output provider from user of Compiler API. 788 /// Output provider from user of Compiler API.
785 api.CompilerOutputProvider userOutputProvider; 789 api.CompilerOutputProvider userOutputProvider;
786 790
787 /// Generate output even when there are compile-time errors. 791 /// Generate output even when there are compile-time errors.
788 final bool generateCodeWithCompileTimeErrors; 792 final bool generateCodeWithCompileTimeErrors;
789 793
790 bool disableInlining = false; 794 bool disableInlining = false;
791 795
792 List<Uri> librariesToAnalyzeWhenRun; 796 List<Uri> librariesToAnalyzeWhenRun;
793 797
(...skipping 243 matching lines...) Expand 10 before | Expand all | Expand 10 after
1037 this.terseDiagnostics: false, 1041 this.terseDiagnostics: false,
1038 this.deferredMapUri: null, 1042 this.deferredMapUri: null,
1039 this.dumpInfo: false, 1043 this.dumpInfo: false,
1040 this.showPackageWarnings: false, 1044 this.showPackageWarnings: false,
1041 this.useContentSecurityPolicy: false, 1045 this.useContentSecurityPolicy: false,
1042 this.suppressWarnings: false, 1046 this.suppressWarnings: false,
1043 this.fatalWarnings: false, 1047 this.fatalWarnings: false,
1044 bool hasIncrementalSupport: false, 1048 bool hasIncrementalSupport: false,
1045 this.enableExperimentalMirrors: false, 1049 this.enableExperimentalMirrors: false,
1046 this.allowNativeExtensions: false, 1050 this.allowNativeExtensions: false,
1051 this.enableNullAwareOperators: false,
1047 this.generateCodeWithCompileTimeErrors: false, 1052 this.generateCodeWithCompileTimeErrors: false,
1048 api.CompilerOutputProvider outputProvider, 1053 api.CompilerOutputProvider outputProvider,
1049 List<String> strips: const []}) 1054 List<String> strips: const []})
1050 : this.disableTypeInferenceFlag = 1055 : this.disableTypeInferenceFlag =
1051 disableTypeInferenceFlag || !emitJavaScript, 1056 disableTypeInferenceFlag || !emitJavaScript,
1052 this.analyzeOnly = 1057 this.analyzeOnly =
1053 analyzeOnly || analyzeSignaturesOnly || analyzeAllFlag, 1058 analyzeOnly || analyzeSignaturesOnly || analyzeAllFlag,
1054 this.analyzeSignaturesOnly = analyzeSignaturesOnly, 1059 this.analyzeSignaturesOnly = analyzeSignaturesOnly,
1055 this.analyzeAllFlag = analyzeAllFlag, 1060 this.analyzeAllFlag = analyzeAllFlag,
1056 this.hasIncrementalSupport = hasIncrementalSupport, 1061 this.hasIncrementalSupport = hasIncrementalSupport,
(...skipping 1397 matching lines...) Expand 10 before | Expand all | Expand 10 after
2454 return futureClass.computeType(compiler).createInstantiation([elementType]); 2459 return futureClass.computeType(compiler).createInstantiation([elementType]);
2455 } 2460 }
2456 2461
2457 @override 2462 @override
2458 InterfaceType streamType([DartType elementType = const DynamicType()]) { 2463 InterfaceType streamType([DartType elementType = const DynamicType()]) {
2459 return streamClass.computeType(compiler).createInstantiation([elementType]); 2464 return streamClass.computeType(compiler).createInstantiation([elementType]);
2460 } 2465 }
2461 } 2466 }
2462 2467
2463 typedef void InternalErrorFunction(Spannable location, String message); 2468 typedef void InternalErrorFunction(Spannable location, String message);
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/apiimpl.dart ('k') | pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698