Simplify LighterASTNode.toFirLightSourceElement

This commit is contained in:
Mikhail Glukhikh
2020-11-19 15:08:43 +03:00
parent 037c505069
commit c6b703b598
7 changed files with 10 additions and 15 deletions
@@ -37,5 +37,5 @@ private fun FirPsiSourceElement<*>.getChild(types: Set<IElementType>, index: Int
private fun FirLightSourceElement.getChild(types: Set<IElementType>, index: Int, depth: Int): FirSourceElement? {
val visitor = LighterTreeElementFinderByType(treeStructure, types, index, depth)
return visitor.find(lighterASTNode)?.let { it.toFirLightSourceElement(it.startOffset, it.endOffset, treeStructure) }
return visitor.find(lighterASTNode)?.toFirLightSourceElement(treeStructure)
}
@@ -76,11 +76,6 @@ val FirModifier<*>.lightNode: LighterASTNode? get() = (this as? FirLightModifier
val FirModifier<*>.source: FirSourceElement?
get() = when (this) {
is FirPsiModifier -> this.psi?.toFirPsiSourceElement()
is FirLightModifier -> {
// TODO pretty sure I got offsets wrong here
val startOffset = tree.getStartOffset(node)
val endOffset = tree.getEndOffset(node)
node.toFirLightSourceElement(startOffset, endOffset, tree)
}
is FirPsiModifier -> psi?.toFirPsiSourceElement()
is FirLightModifier -> node.toFirLightSourceElement(tree)
}
@@ -243,7 +243,7 @@ object FirAnnotationArgumentChecker : FirBasicDeclarationChecker() {
is FirLightSourceElement -> {
val elementOfParent = source.treeStructure.getParent(source.lighterASTNode) ?: source.lighterASTNode
elementOfParent.toFirLightSourceElement(elementOfParent.startOffset, elementOfParent.endOffset, source.treeStructure)
elementOfParent.toFirLightSourceElement(source.treeStructure)
}
else ->
source
@@ -236,7 +236,7 @@ object FirExposedVisibilityDeclarationChecker : FirMemberDeclarationChecker() {
val kidsRef = Ref<Array<LighterASTNode?>>()
this.treeStructure.getChildren(lighterASTNode, kidsRef)
val identifier = kidsRef.get().find { it?.tokenType == KtTokens.IDENTIFIER }
identifier?.toFirLightSourceElement(this.treeStructure.getStartOffset(identifier), this.treeStructure.getEndOffset(identifier), this.treeStructure)
identifier?.toFirLightSourceElement(this.treeStructure)
}
}