private static void doGetAllParents(Class<?> c, LinkedHashSet<Class<?>> accumulator) {

		Class<?>[] interfaces = c.getInterfaces();
		accumulator.addAll(Arrays.asList(interfaces));

		for (Class<?> clazz : interfaces) {
			doGetAllParents(clazz, accumulator);
		}

		Class<?> superclass = c.getSuperclass();
		if (superclass != null) {
			accumulator.add(superclass);
			doGetAllParents(superclass, accumulator);
		}
	}
Returns an order set of all interfaces implemented and classes extended for the entire
type structure of the given class.
<p>
If <code>Object.class</code> is passed to this method, then it will be returned in the
result of this method.

@param c the class to introspect
@return the set of parents
Ghidra/Framework/Utility/src/main/java/utilities/util/reflection/ReflectionUtilities.java