From 73d99019bd4dfb7005748a27fda9e7aa93f50a81 Mon Sep 17 00:00:00 2001 From: Marco Pennekamp Date: Tue, 4 Apr 2023 16:35:36 +0200 Subject: [PATCH] [AA] KT-57515 Add `createCompositeModificationTracker` --- .../api/fir/utils/modificationTrackerUtils.kt | 12 ++++++++++++ .../utils/trackers/CompositeModificationTracker.kt | 3 +-- 2 files changed, 13 insertions(+), 2 deletions(-) create mode 100644 analysis/analysis-api-fir/src/org/jetbrains/kotlin/analysis/api/fir/utils/modificationTrackerUtils.kt diff --git a/analysis/analysis-api-fir/src/org/jetbrains/kotlin/analysis/api/fir/utils/modificationTrackerUtils.kt b/analysis/analysis-api-fir/src/org/jetbrains/kotlin/analysis/api/fir/utils/modificationTrackerUtils.kt new file mode 100644 index 00000000000..5f7c29365f6 --- /dev/null +++ b/analysis/analysis-api-fir/src/org/jetbrains/kotlin/analysis/api/fir/utils/modificationTrackerUtils.kt @@ -0,0 +1,12 @@ +/* + * Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.analysis.api.fir.utils + +import com.intellij.openapi.util.ModificationTracker +import org.jetbrains.kotlin.analysis.utils.trackers.CompositeModificationTracker + +public fun List.createCompositeModificationTracker(): ModificationTracker = + CompositeModificationTracker.createFlattened(this) diff --git a/analysis/analysis-internal-utils/src/org/jetbrains/kotlin/analysis/utils/trackers/CompositeModificationTracker.kt b/analysis/analysis-internal-utils/src/org/jetbrains/kotlin/analysis/utils/trackers/CompositeModificationTracker.kt index 43d8b4debd9..954d2394c50 100644 --- a/analysis/analysis-internal-utils/src/org/jetbrains/kotlin/analysis/utils/trackers/CompositeModificationTracker.kt +++ b/analysis/analysis-internal-utils/src/org/jetbrains/kotlin/analysis/utils/trackers/CompositeModificationTracker.kt @@ -1,5 +1,5 @@ /* - * Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors. * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. */ @@ -7,7 +7,6 @@ package org.jetbrains.kotlin.analysis.utils.trackers import com.intellij.openapi.util.ModificationTracker import java.util.* -import kotlin.collections.ArrayList public class CompositeModificationTracker private constructor(private val trackers: List) : ModificationTracker { override fun getModificationCount(): Long = trackers.sumOf { it.modificationCount }