def isInCurrent = info.generated.headOption.exists()

in sbt-idea-compiler-indices/src/main/scala/org/jetbrains/sbt/indices/IntellijIndexer.scala [36:70]


      def isInCurrent = info.generated.headOption.exists(currentRelations.allProducts.contains)
      def isInPrev    = info.deleted.headOption.exists(prevRelations.allProducts.contains)

      isInCurrent || isInPrev
    }

    result.foreach(IndexingClassfileManager.classesInfo.remove)
    result.getOrElse(ClassesInfo.empty)
  }

  def dumpCompilationInfo(
    isOffline:          Boolean,
    canalysis:          CompileAnalysis,
    prev:               PreviousResult,
    projectId:          String,
    scalaVersion:       String,
    incrementalityType: IncrementalityType,
    compilationInfoDir: File,
    configuration:      PConfiguration,
    timestamp:          Long,
    compilationId:      UUID
  ): Option[File] = {
    val analysis     = canalysis.asInstanceOf[Analysis]
    val prevAnalysis = prev.getAnalysis.orElse(Analysis.Empty).asInstanceOf[Analysis]

    val prevRelations = prevAnalysis.relations
    val relations     = analysis.relations

    val classesInfo = findCorrespondingClassesInfo(relations, prevRelations)

    val isIncremental =
      incrementalityType != IncrementalityType.NonIncremental && // for builds forced from inside the IDEA
        classesInfo.generated.length != relations.allProducts.size // for regular clean builds

    val generatedClasses: Set[CompiledClass] = {