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

Unified Diff: pkg/compiler/lib/src/patch_parser.dart

Issue 1388523002: dart2js: add support for configuration-specific imports. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Address comments and add flag. Created 5 years, 2 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 side-by-side diff with in-line comments
Download patch
Index: pkg/compiler/lib/src/patch_parser.dart
diff --git a/pkg/compiler/lib/src/patch_parser.dart b/pkg/compiler/lib/src/patch_parser.dart
index a2ec63cf7006cdbfc964892a24ed6e9844cfe6db..21555792bb6cee40accbf572626a98ad22f62d66 100644
--- a/pkg/compiler/lib/src/patch_parser.dart
+++ b/pkg/compiler/lib/src/patch_parser.dart
@@ -157,8 +157,11 @@ import 'tokens/token.dart' show
class PatchParserTask extends CompilerTask {
final String name = "Patching Parser";
+ final bool _enableConditionalDirectives;
- PatchParserTask(Compiler compiler): super(compiler);
+ PatchParserTask(Compiler compiler, {bool enableConditionalDirectives})
+ : this._enableConditionalDirectives = enableConditionalDirectives,
+ super(compiler);
/**
* Scans a library patch file, applies the method patches and
@@ -193,7 +196,9 @@ class PatchParserTask extends CompilerTask {
compilationUnit,
idGenerator);
try {
- new PartialParser(patchListener).parseUnit(tokens);
+ new PartialParser(patchListener,
+ enableConditionalDirectives: _enableConditionalDirectives)
+ .parseUnit(tokens);
} on ParserError catch (e) {
// No need to recover from a parser error in platform libraries, user
// will never see this if the libraries are tested correctly.
@@ -210,7 +215,8 @@ class PatchParserTask extends CompilerTask {
measure(() => compiler.withCurrentElement(cls, () {
MemberListener listener = new PatchMemberListener(compiler, cls);
- Parser parser = new PatchClassElementParser(listener);
+ Parser parser = new PatchClassElementParser(
+ listener, enableConditionalDirectives: _enableConditionalDirectives);
try {
Token token = parser.parseTopLevelDeclaration(cls.beginToken);
assert(identical(token, cls.endToken.next));
@@ -257,7 +263,9 @@ class PatchMemberListener extends MemberListener {
* declarations.
*/
class PatchClassElementParser extends PartialParser {
- PatchClassElementParser(Listener listener) : super(listener);
+ PatchClassElementParser(Listener listener, {bool enableConditionalDirectives})
+ : super(listener,
+ enableConditionalDirectives: enableConditionalDirectives);
Token parseClassBody(Token token) => fullParseClassBody(token);
}

Powered by Google App Engine
This is Rietveld 408576698