/** * Get the maximum id assigned to this type or its children. * The first call will cause all of the the ids in tree to be assigned, so * it should not be called before the type is completely built. * @return the maximum id assigned under this type */ public int getMaximumId() { // if the id hasn't been assigned, assign all of the ids from the root if (maxId == -1) { TypeDescription root = this; while (root.parent != null) { root = root.parent; } root.assignIds(0); } return(maxId); }