Summary: | Javadoc IProblem constant not defined | ||
---|---|---|---|
Product: | [Eclipse Project] JDT | Reporter: | Martin Aeschlimann <martinae> |
Component: | Core | Assignee: | Frederic Fusier <frederic_fusier> |
Status: | VERIFIED FIXED | QA Contact: | |
Severity: | normal | ||
Priority: | P3 | CC: | philippe_mulet |
Version: | 3.0 | ||
Target Milestone: | 3.0 M7 | ||
Hardware: | PC | ||
OS: | Windows XP | ||
Whiteboard: |
Description
Martin Aeschlimann
2004-01-29 10:34:02 EST
same problem with IProblem.NotVisibleType + IProblem.Javadoc IProblem.AmbiguousType + IProblem.Javadoc: There are many other possibilities: // Javadoc implicit IDs for deprecatedField(...) case IProblem.Javadoc | IProblem.UsingDeprecatedField: // Javadoc implicit IDs for deprecatedMethod(...) case IProblem.Javadoc | IProblem.UsingDeprecatedConstructor: case IProblem.Javadoc | IProblem.UsingDeprecatedMethod: // Javadoc implicit IDs for deprecatedType(...) case IProblem.Javadoc | IProblem.UsingDeprecatedType: // Javadoc implicit IDs for invalidField(...) case IProblem.Javadoc | IProblem.UndefinedField: case IProblem.Javadoc | IProblem.NotVisibleField: case IProblem.Javadoc | IProblem.AmbiguousField: // Javadoc implicit IDs for invalidConstructor(...) case IProblem.Javadoc | IProblem.UndefinedConstructor: case IProblem.Javadoc | IProblem.NotVisibleConstructor: // Javadoc implicit IDs for invalidMethod(...) case IProblem.Javadoc | IProblem.UndefinedMethod: case IProblem.Javadoc | IProblem.NotVisibleMethod: case IProblem.Javadoc | IProblem.ParameterMismatch: // Javadoc implicit IDs for invalidType(...) case IProblem.Javadoc | IProblem.UndefinedType: case IProblem.Javadoc | IProblem.NotVisibleType: // Javadoc implicit IDs for errorNoMethodFor(...) case IProblem.Javadoc | IProblem.NoMessageSendOnArrayType: case IProblem.Javadoc | IProblem.NoMessageSendOnBaseType: That's why we decided not to create specific constants but just a javadoc "flavor". Why can't you use these values as this? Here are proposed constants which would be added to org.eclipse.jdt.core.dom.TagElement: /** * Constants for well know javadoc tag names. */ public static final String TAG_DEPRECATED = "@deprecated"; //$NON-NLS-1$ public static final String TAG_PARAM = "@param"; //$NON-NLS-1$ public static final String TAG_RETURN = "@return"; //$NON-NLS-1$ public static final String TAG_THROWS = "@throws"; //$NON-NLS-1$ public static final String TAG_EXCEPTION = "@exception"; //$NON-NLS-1$ public static final String TAG_SEE = "@see"; //$NON-NLS-1$ public static final String TAG_LINK = "@link"; //$NON-NLS-1$ public static final String TAG_LINKPLAIN = "@linkplain"; //$NON-NLS-1$ public static final String TAG_INHERITDOC = "@inheritDoc"; //$NON-NLS-1$ Everybody agree on names? Forget previous comment, it was on wrong bug... The advantage of having all the constants is to have an idea what can show up. Initially that was not possible as we used standard ProblemReporter methods and added the javadoc "flavor" when javadoc bit was set on AST node. We changed this while implementing new javadoc options. With these new options problem reporting can depend on conditions which are specific to javadoc compiler settings, so it was not possible to continue to use standard methods. Then, new specific methods were created for each possible javadoc problem and we can now create specific constants as well... Philippe, do you agree? Agreed Following constants have been created in IProblem interface: /* * ID for field errors in Javadoc */ /** @since 3.0 */ int JavadocUndefinedField = Javadoc + Internal + 488; /** @since 3.0 */ int JavadocNotVisibleField = Javadoc + Internal + 489; /** @since 3.0 */ int JavadocAmbiguousField = Javadoc + Internal + 490; /** @since 3.0 */ int JavadocUsingDeprecatedField = Javadoc + Internal + 491; /* * IDs for constructor errors in Javadoc */ /** @since 3.0 */ int JavadocUndefinedConstructor = Javadoc + Internal + 492; /** @since 3.0 */ int JavadocNotVisibleConstructor = Javadoc + Internal + 493; /** @since 3.0 */ int JavadocAmbiguousConstructor = Javadoc + Internal + 494; /** @since 3.0 */ int JavadocUsingDeprecatedConstructor = Javadoc + Internal + 495; /* * IDs for method errors in Javadoc */ /** @since 3.0 */ int JavadocUndefinedMethod = Javadoc + Internal + 496; /** @since 3.0 */ int JavadocNotVisibleMethod = Javadoc + Internal + 497; /** @since 3.0 */ int JavadocAmbiguousMethod = Javadoc + Internal + 498; /** @since 3.0 */ int JavadocUsingDeprecatedMethod = Javadoc + Internal + 499; /** @since 3.0 */ int JavadocNoMessageSendOnBaseType = Javadoc + Internal + 500; /** @since 3.0 */ int JavadocParameterMismatch = Javadoc + Internal + 501; /** @since 3.0 */ int JavadocNoMessageSendOnArrayType = Javadoc + Internal + 502; /* * IDs for type errors in Javadoc */ /** @since 3.0 */ int JavadocUndefinedType = Javadoc + Internal + 503; /** @since 3.0 */ int JavadocNotVisibleType = Javadoc + Internal + 504; /** @since 3.0 */ int JavadocAmbiguousType = Javadoc + Internal + 505; /** @since 3.0 */ int JavadocUsingDeprecatedType = Javadoc + Internal + 506; /** @since 3.0 */ int JavadocInternalTypeNameProvided = Javadoc + Internal + 507; Note that new value for Javadoc prefix: /** @since 3.0 */ int JavadocMessagePrefix = Internal + 509; Verified for 3.0M7 |