manifold icon indicating copy to clipboard operation
manifold copied to clipboard

Add @Duplicates(Class declaringType, SourceVersion sinceJavaVersion) annotation so that extension method authors can tag known semantically duplicate methods

Open rsmckinney opened this issue 3 years ago • 1 comments

Add @Duplicates(Class declaringType, SourceVersion sinceJavaRelease) annotation so that extension method authors can tag known semantically duplicates methods.

@Extension
public class ManifoldStreamCollectionsExt {
  @Duplicates(Stream.class, RELEASE_16)
  public static <T> List<T> toList(@This Stream<T> thiz) {
    return thiz.collect(Collectors.toList());
  }
}

rsmckinney avatar May 17 '22 00:05 rsmckinney

Can you use @Duplicates with isEmpty() on manifold.text.extensions.java.lang.CharSequence.ManCharSequenceExt?

Duplicate extension method. 'isEmpty(java.lang.CharSequence)' from 'manifold.text.extensions.java.lang.CharSequence.ManCharSequenceExt' duplicates a method in the extended class 'java.lang.CharSequence'

joseaio avatar May 19 '22 18:05 joseaio

I see that you're implementing this with the @Expires annotation for Iterable.reversed().

Could you also add this to:

  • Stream.toList() in ManifoldStreamCollectionsExt in manifold-collections (since java 16)
  • CharSequence.isEmpty() in ManCharSequenceExt manifold-text (since java 15)

CC007 avatar Sep 08 '23 16:09 CC007

Marking this issue as fixed with the @Expires annotation

rsmckinney avatar Sep 11 '23 06:09 rsmckinney