elk-util-parent/elk-util-collections/src/main/java/org/semanticweb/elk/util/collections/entryset/EntryCollection.java
public <T extends Entry<T, ?>> T findStructural(Entry<T, ?> entry) {
		int h = entry.structuralHashCode();
		int i = indexFor(h, buckets.length);
		T result = null;
		for (E r = buckets[i]; r != null; r = r.getNext()) {
			if (r.structuralHashCode() == h
					&& (result = entry.structuralEquals(r)) != null)
				return result;
		}
		// else fail
		return null;
	}
public <T extends Entry<T, ?>> T findStructural(Entry<T, ?> entry) {
		int h = entry.structuralHashCode();
		int i = indexFor(h, buckets.length);
		T result = null;
		for (E r = buckets[i]; r != null; r = r.getNext()) {
			if (r.structuralHashCode() == h
					&& (result = entry.structuralEquals(r)) != null)
				return result;
		}
		// else fail
		return null;
	}
Finds and returns the entry in set that is structurally equal to the
input entry if there is one. Equality of entries is decided using
{@link Entry#structuralHashCode()} and
{@link Entry#structuralEquals(Object)} methods.

@param entry
the entry for which the equal entry should be found

@return the entry in the set that is equal to the input entry if there is
one, or {@code null} otherwise