private void markupConstantPoolAndReferences(Program program, ClassFileJava classFile,
			Data constantPoolData, TaskMonitor monitor) {
		AbstractConstantPoolInfoJava[] constantPool = classFile.getConstantPool();

		Map<Integer, Integer> indexMap = getIndexMap(constantPool);
		for (int i = 1; i < constantPool.length; i++) {
			if (monitor.isCancelled()) {
				return;
			}
			AbstractConstantPoolInfoJava constantPoolInfo = constantPool[i];
			BootstrapMethods[] bootstrapMethods =
				getBootStrapMethodAttribute(classFile, constantPool, indexMap);
			createConstantPoolReference(constantPoolData, constantPoolInfo, bootstrapMethods,
				indexMap, i);
		}
	}
Create datatypes for all classes mentioned in the constant pool
@param program program file
@param classFile ClassFileJava associated with {@code program} 
@param monitor for canceling analysis
@param messageLog for logging messages
Ghidra/Processors/JVM/src/main/java/ghidra/javaclass/analyzers/JavaAnalyzer.java