private BootstrapMethods[] getBootStrapMethodAttribute(ClassFileJava classFile,
			AbstractConstantPoolInfoJava[] constantPool, Map<Integer, Integer> indexMap) {
		AbstractAttributeInfo[] attributes = classFile.getAttributes();
		for (AbstractAttributeInfo attribute : attributes) {
			int nameIndex = attribute.getAttributeNameIndex();
			AbstractConstantPoolInfoJava poolEntry = classFile.getConstantPool()[nameIndex];
			if (poolEntry instanceof ConstantPoolUtf8Info) {
				String name = ((ConstantPoolUtf8Info) poolEntry).getString();
				if (name.equals("BootstrapMethods")) {
					return ((BootstrapMethodsAttribute) attribute).getBootstrapMethods();
				}
			}
		}
		return null;
	}
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