RFR(s): 8072726: add adapter to convert Enumeration to Iterator
Paul Sandoz
paul.sandoz at oracle.com
Tue May 19 15:35:14 UTC 2015
On May 19, 2015, at 3:46 PM, Tomasz Kowalczewski <tomasz.kowalczewski at gmail.com> wrote:
> Are you talking about ClassLoader::{findResources, getBootstrapResources, getResources, getSystemResources} and NetworkInterface::{getInetAddresses, getNetworkInterfaces, getSubInterfaces}?
Yes, all those are potential candidates to consider for additional stream returning methods. A little more care is probably required for ClassLoader.
Paul.
>
> On Tue, May 19, 2015 at 2:26 PM, Paul Sandoz <paul.sandoz at oracle.com> wrote:
> On May 19, 2015, at 12:41 PM, Tomasz Kowalczewski <tomasz.kowalczewski at gmail.com> wrote:
> > Is there a plan to override the default method asIterator() in specific implementations of Enumeration to avoid creating new object? JarFile::entries already returns JarEntryIterator which is both.
> >
>
> I suppose one could, it's easy to do in some cases like in JarFile.
>
> Given that Enumeration is a legacy thing time could be better spent on adding Stream returning methods, which already exist on JarFile/ZipFile.
>
> Contributions will be warmly received for Stream returning methods on ClassLoader, NetworkInterface etc.!
>
>
> > To be fair I did some tests and when I wrap Enumerable into simple Iterator adapter it will almost always get scalar replaced by escape analysis (unless, of course, it actually escapes :)).
> >
>
> Right :-) works until it doesn't.
>
> Paul.
>
>
>
> --
> Tomasz Kowalczewski
More information about the core-libs-dev
mailing list