@Override public final boolean allContainingIn(ObjCollection<?> c) { if (this.isEmpty()) return true; boolean containsAll = true; ReusableEntry e = new ReusableEntry(); int mc = modCount(); long free = freeValue; long[] tab = table; for (int i = tab.length - 2; i >= 0; i -= 2) { long key; if ((key = tab[i]) != free) { if (!c.contains(e.with(key, tab[i + 1]))) { containsAll = false; break; } } } if (mc != modCount()) throw new java.util.ConcurrentModificationException(); return containsAll; }
@Override public final boolean allContainingIn(ObjCollection<?> c) { if (this.isEmpty()) return true; boolean containsAll = true; ReusableEntry e = new ReusableEntry(); int mc = modCount(); long free = freeValue; long[] tab = table; for (int i = tab.length - 2; i >= 0; i -= 2) { long key; if ((key = tab[i]) != free) { if (!c.contains(e.with(key, tab[i + 1]))) { containsAll = false; break; } } } if (mc != modCount()) throw new java.util.ConcurrentModificationException(); return containsAll; }
@Override public boolean reverseRemoveAllFrom(ObjSet<?> s) { if (this.isEmpty() || s.isEmpty()) return false; boolean changed = false; ReusableEntry e = new ReusableEntry(); int mc = modCount(); long free = freeValue; long[] tab = table; for (int i = tab.length - 2; i >= 0; i -= 2) { long key; if ((key = tab[i]) != free) { changed |= s.remove(e.with(key, tab[i + 1])); } } if (mc != modCount()) throw new java.util.ConcurrentModificationException(); return changed; }
@Override public boolean reverseRemoveAllFrom(ObjSet<?> s) { if (this.isEmpty() || s.isEmpty()) return false; boolean changed = false; ReusableEntry e = new ReusableEntry(); int mc = modCount(); long free = freeValue; long[] tab = table; for (int i = tab.length - 2; i >= 0; i -= 2) { long key; if ((key = tab[i]) != free) { changed |= s.remove(e.with(key, tab[i + 1])); } } if (mc != modCount()) throw new java.util.ConcurrentModificationException(); return changed; }