@Override public Iterator<V> iterator() { return new ValueSetIterator(AbstractModel.this.iterator()); }
@Override public Iterator<V> iterator() { return new ValueSetIterator(AbstractModel.this.iterator()); }
@Override public boolean retainAll(Collection<?> c) { Iterator<Statement> e = iterator(); try { boolean modified = false; while (e.hasNext()) { if (!c.contains(e.next())) { e.remove(); modified = true; } } return modified; } finally { closeIterator(e); } }
@Override public boolean retainAll(Collection<?> c) { Iterator<Statement> e = iterator(); try { boolean modified = false; while (e.hasNext()) { if (!c.contains(e.next())) { e.remove(); modified = true; } } return modified; } finally { closeIterator(e); } }
@Override public Object[] toArray() { // Estimate size of array; be prepared to see more or fewer elements Iterator<Statement> it = iterator(); try { List<Object> r = new ArrayList<Object>(size()); while (it.hasNext()) { r.add(it.next()); } return r.toArray(); } finally { closeIterator(it); } }
@Override public <T> T[] toArray(T[] a) { Iterator<Statement> iter = AbstractModel.this.iterator(); try { Set<V> set = new LinkedHashSet<V>(); while (iter.hasNext()) { set.add(term(iter.next())); } return set.toArray(a); } finally { AbstractModel.this.closeIterator(iter); } }
@Override public int size() { Iterator<Statement> iter = AbstractModel.this.iterator(); try { Set<V> set = new LinkedHashSet<>(); while (iter.hasNext()) { set.add(term(iter.next())); } return set.size(); } finally { AbstractModel.this.closeIterator(iter); } }
@Override public <T> T[] toArray(T[] a) { // Estimate size of array; be prepared to see more or fewer elements Iterator<Statement> it = iterator(); try { List<Object> r = new ArrayList<Object>(size()); while (it.hasNext()) { r.add(it.next()); } return r.toArray(a); } finally { closeIterator(it); } }
@Override public int size() { Iterator<Statement> iter = AbstractModel.this.iterator(); try { Set<V> set = new LinkedHashSet<V>(); while (iter.hasNext()) { set.add(term(iter.next())); } return set.size(); } finally { AbstractModel.this.closeIterator(iter); } }
@Override public Object[] toArray() { Iterator<Statement> iter = AbstractModel.this.iterator(); try { Set<V> set = new LinkedHashSet<V>(); while (iter.hasNext()) { set.add(term(iter.next())); } return set.toArray(); } finally { AbstractModel.this.closeIterator(iter); } }
@Override public Object[] toArray() { Iterator<Statement> iter = AbstractModel.this.iterator(); try { Set<V> set = new LinkedHashSet<>(); while (iter.hasNext()) { set.add(term(iter.next())); } return set.toArray(); } finally { AbstractModel.this.closeIterator(iter); } }
@Override public <T> T[] toArray(T[] a) { Iterator<Statement> iter = AbstractModel.this.iterator(); try { Set<V> set = new LinkedHashSet<>(); while (iter.hasNext()) { set.add(term(iter.next())); } return set.toArray(a); } finally { AbstractModel.this.closeIterator(iter); } }
@Override public Object[] toArray() { // Estimate size of array; be prepared to see more or fewer elements Iterator<Statement> it = iterator(); try { List<Object> r = new ArrayList<>(size()); while (it.hasNext()) { r.add(it.next()); } return r.toArray(); } finally { closeIterator(it); } }
@Override public <T> T[] toArray(T[] a) { // Estimate size of array; be prepared to see more or fewer elements Iterator<Statement> it = iterator(); try { List<Object> r = new ArrayList<>(size()); while (it.hasNext()) { r.add(it.next()); } return r.toArray(a); } finally { closeIterator(it); } }
@Override public boolean removeAll(Collection<?> c) { boolean modified = false; if (size() > c.size()) { Iterator<?> i = c.iterator(); try { while (i.hasNext()) modified |= remove(i.next()); } finally { closeIterator(c, i); } } else { Iterator<?> i = iterator(); try { while (i.hasNext()) { if (c.contains(i.next())) { i.remove(); modified = true; } } } finally { closeIterator(i); } } return modified; }
@Override public boolean removeAll(Collection<?> c) { boolean modified = false; if (size() > c.size()) { Iterator<?> i = c.iterator(); try { while (i.hasNext()) modified |= remove(i.next()); } finally { closeIterator(c, i); } } else { Iterator<?> i = iterator(); try { while (i.hasNext()) { if (c.contains(i.next())) { i.remove(); modified = true; } } } finally { closeIterator(i); } } return modified; }