static IterableIterator scanLog_safeUnstructure_iterator(S progID, S fileName) { ret scanLog_safeUnstructure_iterator(getProgramFile(progID, fileName)); } static IterableIterator scanLog_safeUnstructure_iterator(S fileName) { ret scanLog_safeUnstructure_iterator(getProgramFile(fileName)); } static IterableIterator scanLog_safeUnstructure_iterator(File file) { final Iterator it = scanLog_iterator(file); ret iteratorFromFunction(func -> O { while (it.hasNext()) pcall { ret safeUnstructure(it.next()); } null; }); }