code: public Iterator<R> iterator() {
          return new Iterator<R>() {
              R last = null;
              R next = newestBuild();
  
              public boolean hasNext() {
                  return next!=null;
              }
  
              public R next() {
                  last = next;
                  if (last!=null)
                      next = last.getPreviousBuild();
                  else
                      throw new NoSuchElementException();
                  return last;
              }
  
              public void remove() {
                  if (last==null)
                      throw new UnsupportedOperationException();
                  removeValue(last);
              }
          };
      }
docs: Walks through builds, newer ones first.