You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There are a few mismatches between how Javadoc and Java annotations work vs how typescript and typedoc behave around inheritance:
Inherited members in TS must be re-declared in subtypes
In Java, @Deprecated is inherited (though confusingly, it isn't itself marked as @Inherited, and I can't find specific docs that suggest it should be treated that way). The Typedoc tool treats @deprecated like it is inherited, and displays overrides as being deprecated, but typescript in VSCode does not show the overridden member to be deprecated.
The ts annotation @deprecated is a typedoc tag, so to explicitly mark downstream members as deprecated (as Java treats them), the downstream member needs jsdoc.
Like javadoc, if an overriding member has its own jsdoc, the overridden element's docs are ignored. One way to deal with that is @inheritDoc.
My conclusion is that a Java type/method with a) no javadoc that b) extends from or overrides something deprecated should always have a short typedoc string attached to it:
/** * @inheritDoc * @deprecated */
This will correctly show that the type/member is deprecated, and will still show the expected documentation.
The text was updated successfully, but these errors were encountered:
Mark method as deprecated if recursively it overrides a deprecated method, and adds inheritDoc tag if the overriding method does not provide its own documentation.
fixVertispan#106
Mark method as deprecated if recursively it overrides a deprecated method, and adds inheritDoc tag if the overriding method does not provide its own documentation.
fixVertispan#106
There are a few mismatches between how Javadoc and Java annotations work vs how typescript and typedoc behave around inheritance:
@Deprecated
is inherited (though confusingly, it isn't itself marked as@Inherited
, and I can't find specific docs that suggest it should be treated that way). The Typedoc tool treats@deprecated
like it is inherited, and displays overrides as being deprecated, but typescript in VSCode does not show the overridden member to be deprecated.@deprecated
is a typedoc tag, so to explicitly mark downstream members as deprecated (as Java treats them), the downstream member needs jsdoc.@inheritDoc
.My conclusion is that a Java type/method with a) no javadoc that b) extends from or overrides something deprecated should always have a short typedoc string attached to it:
This will correctly show that the type/member is deprecated, and will still show the expected documentation.
The text was updated successfully, but these errors were encountered: