This one can be compressed even further: <code> return iterator && ListIteratorHasNext(iterator->iterator); </code>
The constructs <code> X ? true : Y </code> and <code>X ? Y : false</code> always reduce to <code> X || Y</code> and <code>X && Y </code>.
Same in next, at least.