[kotlin] Filter out parent's slices

#KTIJ-26856 Fixed

GitOrigin-RevId: b93955bd9d0bda53814af6d5f44e86af6226c1be
This commit is contained in:
Vladimir Dolzhenko
2023-09-04 09:38:46 +00:00
committed by intellij-monorepo-bot
parent 98d798dbf5
commit e4668e8818
@@ -471,7 +471,11 @@ private class StackedCompositeBindingContextTrace(
}
override fun <K : Any?, V : Any?> getSliceContents(slice: ReadOnlySlice<K, V>): ImmutableMap<K, V> {
return ImmutableMap.copyOf(parentContext.getSliceContents(slice) + map.getSliceContents(slice))
val parentSliceContents = parentContext.getSliceContents(slice).filter {
(it.key as? PsiElement)?.parentsWithSelf?.none { e -> e == element } != false
}
val mapSliceContents = map.getSliceContents(slice)
return ImmutableMap.copyOf(parentSliceContents + mapSliceContents)
}
override fun addOwnDataTo(trace: BindingTrace, commitDiagnostics: Boolean) = throw UnsupportedOperationException()