Bug 133085 - [javadoc][assist] JavaDoc assist for @see does not include information for generics
Summary: [javadoc][assist] JavaDoc assist for @see does not include information for ge...
Status: RESOLVED INVALID
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 3.2   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: 3.2 M6   Edit
Assignee: JDT-Core-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-03-23 19:12 EST by Victor Toni CLA
Modified: 2006-03-24 14:29 EST (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Victor Toni CLA 2006-03-23 19:12:26 EST
When using the autocompletion in this example:

-------------------

package generics;

import java.util.List;

public class DocHint {

	void doSomething(final List<String> strings) {
		///
	}
	
	/**
	 * 
	 * @see #doSomething(
	 */
	void doSomethingElse(final List<String> strings) {
		//
	}
	
}

I would expect the result to be

/**
 * 
 * @see #doSomething(List&lt;String&gt;)
 */
void doSomethingElse(final List<String> strings) {
	//
}
	
rather than:

/**
 * 
 * @see #doSomething(List)
 */
void doSomethingElse(final List<String> strings) {
	//
}
Comment 1 Dani Megert CLA 2006-03-24 03:30:23 EST
Moving to JDT Core for comment.

Additional note: navigation (Ctrl+F3 + linking) inside Javadoc only works for
  @see #doSomething(List)
it does not work when having:
  @see #doSomething(List&lt;String&gt;)
or
  @see #doSomething(List<String>)
Comment 2 Frederic Fusier CLA 2006-03-24 04:39:50 EST
/**
 * @see #doSomething(List&lt;String&gt;)
 */
This is an invalid syntax, javadoc.exe would not accept it:
warning - Tag @see:illegal character: "38" in "#doSomething(List&lt;String&gt;)"
warning - Tag @see:illegal character: "59" in "#doSomething(List&lt;String&gt;)"
warning - Tag @see:illegal character: "38" in "#doSomething(List&lt;String&gt;)"
warning - Tag @see:illegal character: "59" in "#doSomething(List&lt;String&gt;)"
warning - Tag @see: can't find doSomething(List&lt;String&gt;) in generics.DocHint

/**
 * @see #doSomething(List<String>)
 */
Is also an invalid syntax:
warning - Tag @see:illegal character: "60" in "#doSomething(List<String>)"
warning - Tag @see:illegal character: "62" in "#doSomething(List<String>)"
warning - Tag @see: can't find doSomething(List<String>) in generics.DocHint

Please have a look on Sun javadoc 1.5.0 tags spec:
http://java.sun.com/j2se/1.5.0/docs/tooldocs/windows/javadoc.html#@see
and you'll see that generic syntax is not accepted in @see tag references.

The only change for 1.5 syntax in Sun javadoc spec were for @param tag. You can use this tag to specify class/method type parameters:
/**
 * @param <T>
 */
class X<T> {}
Comment 3 Victor Toni CLA 2006-03-24 14:29:31 EST
I should have done the test myself, but it seemed so "natural".
Sorry for the noise.