code: private List<ClassInfo> resolveHandledTypes(ClassInfo servletContainerInitializerClassInfo) {
  		AnnotationInfo handlesTypes = servletContainerInitializerClassInfo.getAnnotationInfo(HANDLES_TYPES);
  
  		Object[] value = (Object[]) handlesTypes.getParameterValues().get("value");
  
  		return Arrays.stream(value)
  				.map(AnnotationClassRef.class::cast)
  				.map(annotationClassRef -> {
  					ClassInfo classInfo = annotationClassRef.getClassInfo();
  					if (classInfo == null) {
  						log.warn("{} not found in the scan result, but declared in the @HandlesTypes annotation of {}", annotationClassRef.getName(), servletContainerInitializerClassInfo.getName());
  					}
  					return classInfo;
  				})
  				.filter(Objects::nonNull)
  				.collect(Collectors.toList());
  	}
docs: Resolves the {@link Class}[] of the {@code HandlesTypes}-annotations present on the given
  {@code ServletContainerInitializer} implementation.
  
  @param servletContainerInitializerClassInfo The {@link ClassInfo} object representing the {@code ServletContainerInitializer} implementation
  @return The classes listed in the {@code HandlesTypes} annotation of the given class.