Bug 127861 [DataBinding] Mark API provisional
bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/updatables/WritableSet.java
Assert.isNotNull(toAdd);
		
		HashSet added = new HashSet();
		added.addAll(toAdd);
		added.removeAll(data);
		data.addAll(added);
		fireAdded(added);
	}
	
	/**
	 * Removes the given elements from the reciever. Elements not in the reciever are ignored.
	 * 
	 * @param toAdd elements to add
	 */	
	public void removeAll(Collection toRemove) {
		Assert.isNotNull(toRemove);
		Assert.isTrue(!isDisposed());
		HashSet removed = new HashSet();
		removed.addAll(toRemove);
		removed.retainAll(data);
		
		data.removeAll(removed);
		fireRemoved(removed);
	}
	
	protected Collection computeElements() {
		return data;
	}
}