mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-04-19 04:51:24 +07:00
IDEA-365690 Logical Structure: clean and document API
GitOrigin-RevId: 8aa5059b709f539873792b126a867a3e0c030ee1
This commit is contained in:
committed by
intellij-monorepo-bot
parent
f673d46b5f
commit
a3b3c3a9a1
@@ -1,9 +1,7 @@
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.lang.java.logical
|
||||
|
||||
import com.intellij.ide.structureView.logical.ConvertElementsProvider
|
||||
import com.intellij.ide.structureView.logical.LogicalStructureElementsProvider
|
||||
import com.intellij.psi.PsiClass
|
||||
import com.intellij.psi.PsiClassOwner
|
||||
import org.jetbrains.annotations.ApiStatus
|
||||
|
||||
@@ -15,7 +13,7 @@ class ClassOwnerLogicalStructureElementsProvider: LogicalStructureElementsProvid
|
||||
for (psiClass in parent.classes) {
|
||||
if (!psiClass.isValid) continue
|
||||
val convertedModels = LogicalStructureElementsProvider.getProviders(psiClass)
|
||||
.filterIsInstance<ConvertElementsProvider<PsiClass, Any>>()
|
||||
.filterIsInstance<PsiClassLogicalElementProvider<Any>>()
|
||||
.map { it.convert(psiClass) }
|
||||
.filterNotNull()
|
||||
if (convertedModels.count() > 0) {
|
||||
|
||||
@@ -1,7 +1,16 @@
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.lang.java.logical
|
||||
|
||||
import com.intellij.ide.structureView.logical.ConvertElementsProvider
|
||||
import com.intellij.ide.structureView.logical.LogicalStructureElementsProvider
|
||||
import com.intellij.psi.PsiClass
|
||||
|
||||
abstract class PsiClassLogicalElementProvider<T> : ConvertElementsProvider<PsiClass, T>()
|
||||
abstract class PsiClassLogicalElementProvider<T> : LogicalStructureElementsProvider<PsiClass, T> {
|
||||
|
||||
abstract fun convert(p: PsiClass): T?
|
||||
|
||||
override fun getElements(parent: PsiClass): List<T> {
|
||||
val t = convert(parent)
|
||||
return if (t != null) listOf(t) else emptyList()
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user