From 06b1a16819ac42cd25346050195a94977a94de00 Mon Sep 17 00:00:00 2001 From: "brianwilkerson@google.com" Date: Thu, 12 Feb 2015 00:41:38 +0000 Subject: [PATCH] Include source info in status AST dump R=scheglov@google.com Review URL: https://codereview.chromium.org//922453002 git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43708 260f80e4-7a28-3924-810f-c04153c831b5 --- pkg/analysis_server/lib/src/status/ast_writer.dart | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/pkg/analysis_server/lib/src/status/ast_writer.dart b/pkg/analysis_server/lib/src/status/ast_writer.dart index db3d74e61ce..99229a099af 100644 --- a/pkg/analysis_server/lib/src/status/ast_writer.dart +++ b/pkg/analysis_server/lib/src/status/ast_writer.dart @@ -10,6 +10,7 @@ import 'package:analysis_server/src/get_handler.dart'; import 'package:analyzer/src/generated/ast.dart'; import 'package:analyzer/src/generated/element.dart'; import 'package:analyzer/src/generated/java_engine.dart'; +import 'package:analyzer/src/generated/source.dart'; /** * A visitor that will produce an HTML representation of an AST structure. @@ -142,6 +143,7 @@ class AstWriter extends UnifyingAstVisitor { _writeProperty("element", node.element); } else if (node is ExportDirective) { _writeProperty("element", node.element); + _writeProperty("source", node.source); } else if (node is FunctionExpressionInvocation) { _writeProperty('static element', node.staticElement); _writeProperty('static type', node.staticType); @@ -149,10 +151,12 @@ class AstWriter extends UnifyingAstVisitor { _writeProperty('propagated type', node.propagatedType); } else if (node is ImportDirective) { _writeProperty("element", node.element); + _writeProperty("source", node.source); } else if (node is LibraryDirective) { _writeProperty("element", node.element); } else if (node is PartDirective) { _writeProperty("element", node.element); + _writeProperty("source", node.source); } else if (node is PartOfDirective) { _writeProperty("element", node.element); } else if (node is PostfixExpression) { @@ -185,7 +189,11 @@ class AstWriter extends UnifyingAstVisitor { if (value != null) { String valueString = null; try { - valueString = value.toString(); + if (value is Source) { + valueString = 'Source (uri="${value.uri}", path="${value.fullName}")'; + } else { + valueString = value.toString(); + } } catch (exception, stackTrace) { exceptions.add(new CaughtException(exception, stackTrace)); }