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

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

Issue 1723443003: First step of support for parsing and ignoring generic methods. (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 4 years, 10 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 593b08fb43519d980fbc981ed080fe4cca2b395c..3bc5ed015c0ed3f62d503d10f6a7456fe323fc96 100644
--- a/pkg/compiler/lib/src/patch_parser.dart
+++ b/pkg/compiler/lib/src/patch_parser.dart
@@ -160,9 +160,13 @@ import 'tokens/token.dart' show
class PatchParserTask extends CompilerTask {
final String name = "Patching Parser";
final bool _enableConditionalDirectives;
+ final bool _enableGenericMethods;
- PatchParserTask(Compiler compiler, {bool enableConditionalDirectives})
+ PatchParserTask(Compiler compiler,
+ {bool enableConditionalDirectives: false,
+ bool enableGenericMethods: false})
: this._enableConditionalDirectives = enableConditionalDirectives,
+ this._enableGenericMethods = enableGenericMethods,
super(compiler);
/**
@@ -199,7 +203,8 @@ class PatchParserTask extends CompilerTask {
idGenerator);
try {
new PartialParser(patchListener,
- enableConditionalDirectives: _enableConditionalDirectives)
+ enableConditionalDirectives: _enableConditionalDirectives,
+ enableGenericMethods: _enableGenericMethods)
.parseUnit(tokens);
} on ParserError catch (e) {
// No need to recover from a parser error in platform libraries, user
@@ -218,7 +223,9 @@ class PatchParserTask extends CompilerTask {
measure(() => reporter.withCurrentElement(cls, () {
MemberListener listener = new PatchMemberListener(compiler, cls);
Parser parser = new PatchClassElementParser(
- listener, enableConditionalDirectives: _enableConditionalDirectives);
+ listener,
+ enableConditionalDirectives: _enableConditionalDirectives,
+ enableGenericMethods: _enableGenericMethods);
try {
Token token = parser.parseTopLevelDeclaration(cls.beginToken);
assert(identical(token, cls.endToken.next));
@@ -270,9 +277,12 @@ class PatchMemberListener extends MemberListener {
* declarations.
*/
class PatchClassElementParser extends PartialParser {
- PatchClassElementParser(Listener listener, {bool enableConditionalDirectives})
+ PatchClassElementParser(Listener listener,
+ {bool enableConditionalDirectives: false,
+ bool enableGenericMethods: false})
: super(listener,
- enableConditionalDirectives: enableConditionalDirectives);
+ enableConditionalDirectives: enableConditionalDirectives,
+ enableGenericMethods: enableGenericMethods);
Token parseClassBody(Token token) => fullParseClassBody(token);
}

Powered by Google App Engine
This is Rietveld 408576698