Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cross-project-issues-dev] API Tooling tag changes -> regexes to replace in batch


Most of the existing @noimplement tags should probably be replaced by @noimplement & @noextend.

To make this change in batch, you can search for this regex in *.java files:
 \* @noimplement This interface is not intended to be implemented by clients\.\R

Then, verify the results in the Search view, select the matches you want to update, and choose 'Replace Selected...' from the context menu. Replace them with regex:
\0 * @noextend This interface is not intended to be extended by clients.\R

To later find @noimplement interfaces where the above replacement has not been applied, search for:
 \* @noimplement This interface is not intended to be implemented by clients\.\R(?! \* @noextend This interface is not intended to be extended by clients\.)

If you used non-standard Javadoc tags, you may have to adapt the regular expressions.

HTH,
Markus


From: Michael Rennie <Michael_Rennie@xxxxxxxxxx>
To: cross-project-issues-dev@xxxxxxxxxxx
Date: 2008-11-17 22:57
Subject: [cross-project-issues-dev] API Tooling tag changes





Preamble

Available in this weeks' I-build the supported tags for an interface are being reverted to include the @noextend tag once again.

The bug fix in question is
https://bugs.eclipse.org/bugs/show_bug.cgi?id=230189. The bug fix that is being reverted is https://bugs.eclipse.org/bugs/show_bug.cgi?id=227368.

Effect on Clients


Since the fix to bug 227368 the @noimplement tag has been pulling double duty as both a no implement AND no extend restriction. With the fix 230189 this is no longer true, @noimplement only means no implement, so to also get a no extend restriction you must add the @noextend tag back to these interfaces.


The effect of this change is that you may see some unexpected errors about added methods or fields, problems that would have been suppressed by the no implement tag alone before, which now require the @noextend tag as well.


For example the problem:


The method org.eclipse.core.resources.IResource.isHidden(int) in an interface that is intended to be implemented or extended has been added


shows up, but will be removed once an @noextend tag is added to IResource.



Michael Rennie
_______________________________________________
cross-project-issues-dev mailing list
cross-project-issues-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/cross-project-issues-dev



Back to the top