int timeout = 1; while (parents == null) { try { wait(timeout); } catch (InterruptedException e) { throw new Error(e); } timeout *= 2; if (timeout >= 1000) throw new Error("computation of parents apparently stuck for " + this); } return parents;
if (parents instanceof LazyParents) return ((LazyParents)parents).force(); else return (ScalaClassType[])parents;
    public ScalaClassType[] getParents() {        int timeout = 1;        while (parents == null) {            try {                wait(timeout);            } catch (InterruptedException e) {                throw new Error(e);            }            timeout *= 2;            if (timeout >= 1000)                throw new Error("computation of parents apparently stuck for "                                + this);        }        return parents;    }