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

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

Issue 2644843006: Use packages dart_parser, dart_scanner, and compiler_util. (Closed)
Patch Set: Created 3 years, 11 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 bf2ae05b2bb9d1e60a1100713a392005c35b8e2f..0354586c1b27271904101b0ef7945763018a78fd 100644
--- a/pkg/compiler/lib/src/patch_parser.dart
+++ b/pkg/compiler/lib/src/patch_parser.dart
@@ -134,14 +134,12 @@ import 'id_generator.dart';
import 'js_backend/js_backend.dart' show JavaScriptBackend;
import 'library_loader.dart' show LibraryLoader;
import 'parser/element_listener.dart' show ElementListener;
-import 'parser/listener.dart' show Listener, ParserError;
+import 'package:dart_parser/dart_parser.dart'
+ show ClassMemberParser, Listener, Parser, ParserError, TopLevelParser;
import 'parser/member_listener.dart' show MemberListener;
-import 'parser/parser.dart' show Parser;
import 'parser/partial_elements.dart' show PartialClassElement;
-import 'parser/partial_parser.dart' show PartialParser;
-import 'scanner/scanner.dart' show Scanner;
import 'script.dart';
-import 'tokens/token.dart' show StringToken, Token;
+import 'package:dart_scanner/dart_scanner.dart' show StringToken, Token;
class PatchParserTask extends CompilerTask {
final String name = "Patching Parser";
@@ -178,11 +176,11 @@ class PatchParserTask extends CompilerTask {
measure(() {
// TODO(johnniwinther): Test that parts and exports are handled correctly.
Script script = compilationUnit.script;
- Token tokens = new Scanner(script.file).tokenize();
+ Token tokens = compiler.scanner.scanFile(script.file);
Listener patchListener = new PatchElementListener(
compiler, compilationUnit, compiler.idGenerator);
try {
- new PartialParser(patchListener).parseUnit(tokens);
+ new TopLevelParser(patchListener).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.
@@ -199,7 +197,7 @@ class PatchParserTask extends CompilerTask {
measure(() => reporter.withCurrentElement(cls, () {
MemberListener listener = new PatchMemberListener(compiler, cls);
- Parser parser = new PatchClassElementParser(listener);
+ Parser parser = new ClassMemberParser(listener);
try {
Token token = parser.parseTopLevelDeclaration(cls.beginToken);
assert(identical(token, cls.endToken.next));
@@ -245,16 +243,6 @@ class PatchMemberListener extends MemberListener {
}
/**
- * Partial parser for patch files that also handles the members of class
- * declarations.
- */
-class PatchClassElementParser extends PartialParser {
- PatchClassElementParser(Listener listener) : super(listener);
-
- Token parseClassBody(Token token) => fullParseClassBody(token);
-}
-
-/**
* Extension of [ElementListener] for parsing patch files.
*/
class PatchElementListener extends ElementListener implements Listener {

Powered by Google App Engine
This is Rietveld 408576698