The implementation is actually returning `mixed|false` (based on `next()` being called), although the interface hints at void.