// f: A -> B static LinkedHashMap listToMapWithValueFunction(Iterable l, O f) { new LinkedHashMap map; for (A a : unnull(l)) map.put(a, (B) callF(f, a)); ret map; } static LinkedHashMap listToMapWithValueFunction(O f, Iterable l) { ret listToMapWithValueFunction(l, f); }