private void updateGraphForAffectedAddresses(DomainObjectChangedEvent ev) {
		if (ev.contains(DomainObjectEvent.RESTORED)) {
			controller.invalidateAllCacheForProgram(currentProgram);
			return;
		}

		AddressSet addresses = new AddressSet();

		Iterator<DomainObjectChangeRecord> iterator = ev.iterator();
		while (iterator.hasNext()) {
			DomainObjectChangeRecord record = iterator.next();
			if (record instanceof ProgramChangeRecord) {
				ProgramChangeRecord programRecord = (ProgramChangeRecord) record;
				Address start = programRecord.getStart();
				Address end = programRecord.getEnd();

				if (start != null && end != null) {
					addresses.addRange(start, end);
				}
			}
		}

		controller.invalidateCacheForAddresses(addresses);
	}
Returns true when something destructive has happened to the data upon which the graph has
created, like a memory block move.
Ghidra/Features/FunctionGraph/src/main/java/ghidra/app/plugin/core/functiongraph/FGProvider.java