Casting gatherer

Nir Lisker nlisker at gmail.com
Sat Apr 26 18:55:23 UTC 2025


Hi,

instanceof has been refitted to include an auto-cast ("pattern matching on
instanceof"). Unfortunately, doing this as an intermediate operation on a
stream requires first to filter via instanceof and then map via a cast.
This is because

    x instanceof MyClass myClass

returns a boolean, not myClass.

I've asked for an easier way of doing it long ago directly on Stream and
was declined, but now with Gatherers I'm bringing this up again. I think it
would be reasonable to put such an operation in the Gatherers class. I
imagine that many Gatherer libraries, or utility classes, will include it
since it's a common operation, and having it in the JDK means that it'll be
done the best way possible (you can optimize where others can't, if
applicable here).

-- Nir
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/core-libs-dev/attachments/20250426/2a1d4c2e/attachment.htm>


More information about the core-libs-dev mailing list