public boolean discoverGoTypes(Set<Long> discoveredTypes) throws IOException {
		if (!discoveredTypes.add(context.getStructureStart())) {
			return false;
		}
		GoUncommonType ut = getUncommonType();
		if (ut != null) {
			for (GoMethod method : ut.getMethods()) {
				GoType methodType = method.getType();
				if (methodType != null) {
					methodType.discoverGoTypes(discoveredTypes);
				}
			}
		}
		return true;
	}
Iterates this type, and any types this type refers to, while registering the types with
the {@link GoRttiMapper} context.
<p>
This method should be overloaded by derived type classes to add any additional types 
referenced by the derived type.
 
@param discoveredTypes set of already iterated types
@return boolean boolean flag, if false the type has already been discovered, if true
the type was encountered for the first time 
@throws IOException if error reading type info
Ghidra/Features/Base/src/main/java/ghidra/app/util/bin/format/golang/rtti/types/GoType.java