MCPcopy Create free account
hub / github.com/LFYSec/MScan / addAllDiff

Method addAllDiff

src/main/java/pascal/taie/util/collection/ArraySet.java:162–183  ·  view source on GitHub ↗
(Collection<? extends E> c)

Source from the content-addressed store, hash-verified

160 }
161
162 @Override
163 public SetEx<E> addAllDiff(Collection<? extends E> c) {
164 ArrayList<E> diff;
165 if (c instanceof Set) {
166 diff = new ArrayList<>();
167 for (E e : c) {
168 if (add(e)) {
169 diff.add(e);
170 }
171 }
172 } else {
173 Set<E> diffSet = Sets.newHybridSet();
174 for (E e : c) {
175 if (add(e)) {
176 // use set to efficiently filter out duplicate elements
177 diffSet.add(e);
178 }
179 }
180 diff = new ArrayList<>(diffSet);
181 }
182 return new ArraySet<>(diff, true);
183 }
184
185 private void ensureCapacity(int minCapacity) {
186 if (fixedCapacity && minCapacity > initialCapacity) {

Callers

nothing calls this directly

Calls 3

addMethod · 0.95
newHybridSetMethod · 0.95
addMethod · 0.65

Tested by

no test coverage detected