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
return o;
			}
		}
		return null;
	}
	/**
	 * Copies the attributes of the given element into the given SWT item.
	 * 
	 * @param item
	 *           the SWT item
	 * @param element
	 *           the element
	 */
	protected abstract void doUpdateItem(Item item, Object element);
	
	protected void doUpdateItem(
		Widget widget,
		Object element,
		boolean fullMap) {
		if (widget instanceof Item) {
			Item item = (Item) widget;
			
			if (fullMap) {
				associate(element, item);
			} else {
				item.setData(element);
				mapElement(element, item);
			}
			
			Platform.run(new UpdateItemSafeRunnable(item, element));