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
This commit is contained in:
brianwilkerson@google.com
2015-02-12 00:41:38 +00:00
parent 2f0d13af3b
commit 06b1a16819
@@ -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));
}