// A: object type
// B: hash type (e.g. Long)
// The hasher is just for speeding up the process.
// Every object is also checked using eq() among those with the same hash.
static L lambdaMapLike uniquifyUsingHasher(IF1 hasher, Iterable l) {
ret new UniquifyUsingHasher(hasher).addAll(l)!;
}