Bug 32254 [Viewers] AbstractTreeViewer uses HashSet to remember expansion state
I20030216 The custom hash table should be used instead. Otherwise expansion state may be lost due to a different equals implementation of the element and the IElementComparer.
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/AbstractTreeViewer.java
* collapsed.
	 * <p>
	 * This method is typically used when restoring the interesting state of a
	 * viewer captured by an earlier call to <code>getExpandedElements</code>.
	 * </p>
	 * 
	 * @param elements
	 *           the array of expanded elements
	 * @see #getExpandedElements
	 */
	public void setExpandedElements(Object[] elements) {
		assertElementsNotNull(elements);
		HashSet expandedElements = new HashSet(elements.length * 2 + 1);
		for (int i = 0; i < elements.length; ++i) {
			
			internalExpand(elements[i], false);
			expandedElements.add(elements[i]);
		}
		internalSetExpanded(expandedElements, getControl());
	}
	/**
	 * Sets whether the node corresponding to the given element is expanded or
	 * collapsed.
	 * 
	 * @param element
	 *           the element
	 * @param expanded
	 *           <code>true</code> if the node is expanded, and <code>false</code>
	 *           if collapsed
	 */