static IterableIterator mapLike mapI_pcall(final O f, final Iterator i) { ret new IterableIterator { public bool hasNext() { ret i.hasNext(); } public O next() { ret pcallF(f, i.next()); } }; } ifclass IterableIterator static IterableIterator mapI_pcall(IterableIterator i, O f) { ret mapI_pcall((Iterator) i, f); } static IterableIterator mapI_pcall(O f, IterableIterator i) { ret mapI_pcall((Iterator) i, f); } endif static IterableIterator mapI_pcall(Iterator i, O f) { ret mapI_pcall(f, i); } static ItIt mapI_pcall(Iterable i, IF1 f) { ret mapI_pcall(i, (O) f); } static IterableIterator mapI_pcall(Iterable i, O f) { ret mapI_pcall(f, i.iterator()); } static IterableIterator mapI_pcall(O f, Iterable i) { ret mapI_pcall(i, f); }