/** * Get the sub-list of passes for the job between passes <code>begin</code> and <code>end</code>, * inclusive. */ public List passes(Job job, Pass.ID begin, Pass.ID end) { List l = passes(job); Pass p = null; Iterator i = l.iterator(); while (i.hasNext()) { p = (Pass) i.next(); if (begin == p.id()) break; if (!(p instanceof BarrierPass)) i.remove(); } while (p.id() != end && i.hasNext()) { p = (Pass) i.next(); } while (i.hasNext()) { p = (Pass) i.next(); i.remove(); } return l; }