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

Unified Diff: editor/tools/plugins/com.google.dart.tools.core/src/com/google/dart/tools/core/utilities/dartdoc/DartDocUtilities.java

Issue 84663003: Issue 4497. Show the best known type in the text hover. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 1 month 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: editor/tools/plugins/com.google.dart.tools.core/src/com/google/dart/tools/core/utilities/dartdoc/DartDocUtilities.java
diff --git a/editor/tools/plugins/com.google.dart.tools.core/src/com/google/dart/tools/core/utilities/dartdoc/DartDocUtilities.java b/editor/tools/plugins/com.google.dart.tools.core/src/com/google/dart/tools/core/utilities/dartdoc/DartDocUtilities.java
index 6ebb36a05d493cabdfe2d7187fce09523642e8df..e9941bdfd165fa0fab6f15cab1548469f5c96d83 100644
--- a/editor/tools/plugins/com.google.dart.tools.core/src/com/google/dart/tools/core/utilities/dartdoc/DartDocUtilities.java
+++ b/editor/tools/plugins/com.google.dart.tools.core/src/com/google/dart/tools/core/utilities/dartdoc/DartDocUtilities.java
@@ -22,6 +22,7 @@ import com.google.dart.engine.element.Element;
import com.google.dart.engine.element.ExecutableElement;
import com.google.dart.engine.element.FieldElement;
import com.google.dart.engine.element.FieldFormalParameterElement;
+import com.google.dart.engine.element.FunctionElement;
import com.google.dart.engine.element.LibraryElement;
import com.google.dart.engine.element.LocalVariableElement;
import com.google.dart.engine.element.MethodElement;
@@ -33,6 +34,7 @@ import com.google.dart.engine.element.VariableElement;
import com.google.dart.engine.element.visitor.SimpleElementVisitor;
import com.google.dart.engine.source.Source;
import com.google.dart.engine.source.Source.ContentReceiver;
+import com.google.dart.engine.type.Type;
import com.google.dart.engine.utilities.dart.ParameterKind;
import com.google.dart.engine.utilities.source.SourceRange;
import com.google.dart.tools.core.DartCore;
@@ -50,6 +52,12 @@ import java.nio.CharBuffer;
public final class DartDocUtilities {
private static class DocumentingVisitor extends SimpleElementVisitor<String> {
+ private Type elementType;
+
+ public DocumentingVisitor(Type type) {
+ this.elementType = type;
+ }
+
@Override
public String visitClassElement(ClassElement element) {
@@ -87,7 +95,7 @@ public final class DartDocUtilities {
}
@Override
- public String visitFunctionElement(com.google.dart.engine.element.FunctionElement element) {
+ public String visitFunctionElement(FunctionElement element) {
return getDescription(element);
}
@@ -274,7 +282,11 @@ public final class DartDocUtilities {
}
private String getTypeName(VariableElement element) {
- return getName(element.getType());
+ Type type = element.getType();
+ if (elementType != null) {
+ type = elementType;
+ }
+ return getName(type);
}
}
@@ -373,27 +385,26 @@ public final class DartDocUtilities {
/**
* Return a one-line description of the given Element.
*
- * @param the element to document
+ * @param type the best known {@link Type} of the given {@link Element}
+ * @param element the {@link Element} to document
* @return a String summarizing this element, or {@code null} if there is no suitable
* documentation
*/
- public static String getTextSummary(Element element) {
-
+ public static String getTextSummary(Type type, Element element) {
if (element != null) {
- String description = element.accept(new DocumentingVisitor());
+ String description = element.accept(new DocumentingVisitor(type));
if (description != null) {
return description;
}
}
-
return null;
}
/**
* Return a one-line description of the given Element as html
*/
- public static String getTextSummaryAsHtml(Element element) {
- String summary = getTextSummary(element);
+ public static String getTextSummaryAsHtml(Type type, Element element) {
+ String summary = getTextSummary(type, element);
if (summary == null) {
return null;
}
« no previous file with comments | « no previous file | editor/tools/plugins/com.google.dart.tools.core_test/src/com/google/dart/tools/core/utilities/dartdoc/DartDocUtilitiesTest.java » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698