@Override public boolean equals(Object o) { this.acquireReadLock(); try { return this.delegate.equals(o); } finally { this.unlockReadLock(); } }
@Override public MutableSet<T> reject(Predicate<? super T> predicate) { this.acquireReadLock(); try { return this.delegate.reject(predicate); } finally { this.unlockReadLock(); } }
@Override public <V> MutableSetMultimap<V, T> groupBy(Function<? super T, ? extends V> function) { this.acquireReadLock(); try { return this.delegate.groupBy(function); } finally { this.unlockReadLock(); } }
@Override public <V> MutableSetMultimap<V, T> groupByEach(Function<? super T, ? extends Iterable<V>> function) { this.acquireReadLock(); try { return this.delegate.groupByEach(function); } finally { this.unlockReadLock(); } }
@Override public <B> LazyIterable<Pair<T, B>> cartesianProduct(SetIterable<B> set) { this.acquireReadLock(); try { return this.delegate.cartesianProduct(set); } finally { this.unlockReadLock(); } }
@Override public ImmutableSet<T> toImmutable() { this.acquireReadLock(); try { return Sets.immutable.withAll(this.delegate); } finally { this.unlockReadLock(); } }
@Override public <V> MutableMap<V, T> groupByUniqueKey(Function<? super T, ? extends V> function) { this.acquireReadLock(); try { return this.delegate.groupByUniqueKey(function); } finally { this.unlockReadLock(); } }
@Override public <R extends Set<T>> R unionInto(SetIterable<? extends T> set, R targetSet) { this.acquireReadLock(); try { return this.delegate.unionInto(set, targetSet); } finally { this.unlockReadLock(); } }
@Override public MutableSet<T> asSynchronized() { this.acquireReadLock(); try { return SynchronizedMutableSet.of(this); } finally { this.unlockReadLock(); } }
@Override public <V> MutableSet<V> collect(Function<? super T, ? extends V> function) { this.acquireReadLock(); try { return this.delegate.collect(function); } finally { this.unlockReadLock(); } }
@Override public MutableCharSet collectChar(CharFunction<? super T> charFunction) { this.acquireReadLock(); try { return this.delegate.collectChar(charFunction); } finally { this.unlockReadLock(); } }
@Override public MutableDoubleSet collectDouble(DoubleFunction<? super T> doubleFunction) { this.acquireReadLock(); try { return this.delegate.collectDouble(doubleFunction); } finally { this.unlockReadLock(); } }
@Override public MutableDoubleSet collectDouble(DoubleFunction<? super T> doubleFunction) { this.acquireReadLock(); try { return this.delegate.collectDouble(doubleFunction); } finally { this.unlockReadLock(); } }
@Override public MutableIntSet collectInt(IntFunction<? super T> intFunction) { this.acquireReadLock(); try { return this.delegate.collectInt(intFunction); } finally { this.unlockReadLock(); } }
@Override public MutableLongSet collectLong(LongFunction<? super T> longFunction) { this.acquireReadLock(); try { return this.delegate.collectLong(longFunction); } finally { this.unlockReadLock(); } }
@Override public <R extends Set<T>> R intersectInto(SetIterable<? extends T> set, R targetSet) { this.acquireReadLock(); try { return this.delegate.intersectInto(set, targetSet); } finally { this.unlockReadLock(); } }
@Override public MutableSet<T> difference(SetIterable<? extends T> subtrahendSet) { this.acquireReadLock(); try { return this.delegate.difference(subtrahendSet); } finally { this.unlockReadLock(); } }
@Override public boolean isProperSubsetOf(SetIterable<? extends T> candidateSuperset) { this.acquireReadLock(); try { return this.delegate.isProperSubsetOf(candidateSuperset); } finally { this.unlockReadLock(); } }
@Override public MutableSet<T> clone() { this.acquireReadLock(); try { return new MultiReaderUnifiedSet<>(this.delegate.clone()); } finally { this.unlockReadLock(); } }
@Override public MutableSet<T> clone() { this.acquireReadLock(); try { return new MultiReaderUnifiedSet<>(this.delegate.clone()); } finally { this.unlockReadLock(); } }