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

Unified Diff: pkg/analyzer/lib/dart/ast/visitor.dart

Issue 2613383003: Add support for generic function type syntax, part 1 (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
« no previous file with comments | « pkg/analyzer/lib/dart/ast/resolution_map.dart ('k') | pkg/analyzer/lib/src/dart/ast/ast.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/analyzer/lib/dart/ast/visitor.dart
diff --git a/pkg/analyzer/lib/dart/ast/visitor.dart b/pkg/analyzer/lib/dart/ast/visitor.dart
index ad96bed8007a1dcd2b5838e37187dfb203b11ceb..310d334fddf56df30b787a7a1263ae7d3d048b38 100644
--- a/pkg/analyzer/lib/dart/ast/visitor.dart
+++ b/pkg/analyzer/lib/dart/ast/visitor.dart
@@ -336,6 +336,13 @@ class GeneralizingAstVisitor<R> implements AstVisitor<R> {
visitNormalFormalParameter(node);
@override
+ R visitGenericFunctionType(GenericFunctionType node) =>
+ visitTypeAnnotation(node);
+
+ @override
+ R visitGenericTypeAlias(GenericTypeAlias node) => visitTypeAlias(node);
+
+ @override
R visitHideCombinator(HideCombinator node) => visitCombinator(node);
R visitIdentifier(Identifier node) => visitExpression(node);
@@ -528,6 +535,8 @@ class GeneralizingAstVisitor<R> implements AstVisitor<R> {
R visitTypeAlias(TypeAlias node) => visitNamedCompilationUnitMember(node);
+ R visitTypeAnnotation(TypeAnnotation node) => visitNode(node);
+
@override
R visitTypeArgumentList(TypeArgumentList node) => visitNode(node);
@@ -880,6 +889,18 @@ class RecursiveAstVisitor<R> implements AstVisitor<R> {
}
@override
+ R visitGenericFunctionType(GenericFunctionType node) {
+ node.visitChildren(this);
+ return null;
+ }
+
+ @override
+ R visitGenericTypeAlias(GenericTypeAlias node) {
+ node.visitChildren(this);
+ return null;
+ }
+
+ @override
R visitHideCombinator(HideCombinator node) {
node.visitChildren(this);
return null;
@@ -1398,6 +1419,12 @@ class SimpleAstVisitor<R> implements AstVisitor<R> {
null;
@override
+ R visitGenericFunctionType(GenericFunctionType node) => null;
+
+ @override
+ R visitGenericTypeAlias(GenericTypeAlias node) => null;
+
+ @override
R visitHideCombinator(HideCombinator node) => null;
@override
@@ -2000,6 +2027,22 @@ class TimedAstVisitor<T> implements AstVisitor<T> {
}
@override
+ T visitGenericFunctionType(GenericFunctionType node) {
+ stopwatch.start();
+ T result = _baseVisitor.visitGenericFunctionType(node);
+ stopwatch.stop();
+ return result;
+ }
+
+ @override
+ T visitGenericTypeAlias(GenericTypeAlias node) {
+ stopwatch.start();
+ T result = _baseVisitor.visitGenericTypeAlias(node);
+ stopwatch.stop();
+ return result;
+ }
+
+ @override
T visitHideCombinator(HideCombinator node) {
stopwatch.start();
T result = _baseVisitor.visitHideCombinator(node);
@@ -2642,6 +2685,12 @@ class UnifyingAstVisitor<R> implements AstVisitor<R> {
visitNode(node);
@override
+ R visitGenericFunctionType(GenericFunctionType node) => visitNode(node);
+
+ @override
+ R visitGenericTypeAlias(GenericTypeAlias node) => visitNode(node);
+
+ @override
R visitHideCombinator(HideCombinator node) => visitNode(node);
@override
« no previous file with comments | « pkg/analyzer/lib/dart/ast/resolution_map.dart ('k') | pkg/analyzer/lib/src/dart/ast/ast.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698