/** * Removes a set of deps from the set of known direct deps. This is complicated by the need to * maintain the group data. If we remove a dep that ended a group, then its predecessor's group * data must be changed to indicate that it now ends the group. * * @see NodeEntry#removeUnfinishedDeps */ void removeDirectDeps(Set<SkyKey> unfinishedDeps) { directDeps.remove(unfinishedDeps); }
/** * Remove all elements of toRemove from this list. It is a fatal error if any elements of * toRemove are not present. Takes time proportional to the size of the list, so should not be * called often. */ public void remove(Set<E> toRemove) { groupedList = GroupedList.remove(groupedList, toRemove); int oldSize = size(); elements.removeAll(toRemove); Preconditions.checkState(oldSize == size() + toRemove.size(), "%s %s", toRemove, this); }