public void createVirtualTables(CategoryPath categoryPath,
			Map<String, Address> addressByMangledName, MessageLog log, TaskMonitor monitor)
			throws CancelledException {
		for (Map.Entry<String, Address> entry : addressByMangledName.entrySet()) {
			monitor.checkCancelled();
			String mangled = entry.getKey();
			Address address = entry.getValue();
			if (!createVirtualTable(categoryPath, mangled, address, monitor)) {
				log.appendMsg("Could not create VxTable for " + mangled);
			}
		}
	}
Creates a virtual function and base tables for the {@code Map<String, Address>} of
addresses-by-mangled names.  Any failures are logged

@param categoryPath the base category path used for the collection of class-related
types
@param addressByMangledName the map of addresses-by-mangled-names
@param log the message log
@param monitor the task monitor
@throws CancelledException upon user cancellation
Ghidra/Features/PDB/src/main/java/ghidra/app/util/pdb/classtype/MsVxtManager.java