I would tend to agree in the general case, but for same reasons as above comment I decided to go this way. One could argue that you would have tested for equality with AbsentMO.INSTANCE before even attempting to iterate