public void createListedDestructorFunctions(Map<Address, RecoveredClass> referenceToClassMap,
			List<Address> referencesToDestructors)
			throws CancelledException, InvalidInputException, DuplicateNameException {

		for (Address destructorReference : referencesToDestructors) {
			monitor.checkCancelled();

			RecoveredClass recoveredClass = referenceToClassMap.get(destructorReference);

			Function destructor = extendedFlatAPI.getReferencedFunction(destructorReference, true);
			if (destructor == null) {
				continue;
			}

			if (recoveredClass.getIndeterminateList().contains(destructor)) {
				addDestructorToClass(recoveredClass, destructor);
				recoveredClass.removeIndeterminateConstructorOrDestructor(destructor);
				continue;
			}

			if (recoveredClass.getIndeterminateInlineList().contains(destructor)) {
				processInlineDestructor(recoveredClass, destructor, referenceToClassMap);
			}
		}
	}
@param referenceToClassMap map from reference to class the referenced function is in
@param referencesToDestructors list of addresses referring to destructors
@throws CancelledException if cancelled
@throws InvalidInputException if error setting return type
@throws DuplicateNameException if try to create same symbol name already in namespace
Ghidra/Features/Decompiler/ghidra_scripts/classrecovery/RecoveredClassHelper.java