Skip to content

Commit c27c72b

Browse files
committed
refactor: simplify injection constructions checks
1 parent 7522439 commit c27c72b

File tree

1 file changed

+12
-13
lines changed

1 file changed

+12
-13
lines changed

src/main/kotlin/com/github/tempest/framework/views/injection/PHPLanguageInjector.kt

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,11 @@ import com.intellij.psi.xml.XmlToken
1515
import com.jetbrains.php.lang.PhpLanguage
1616

1717
class PHPLanguageInjector : MultiHostInjector {
18+
val tagsMap = mapOf(
19+
"{!!" to "!!}",
20+
"{{" to "}}",
21+
)
22+
1823
override fun getLanguagesToInject(
1924
registrar: MultiHostRegistrar,
2025
element: PsiElement
@@ -36,7 +41,7 @@ class PHPLanguageInjector : MultiHostInjector {
3641
is HtmlTag -> {
3742
element.children
3843
.mapNotNull { it as? HtmlRawTextImpl }
39-
.forEach { child->
44+
.forEach { child ->
4045
injectIntoText(HtmlTextInjectionHostWrapper(child), registrar)
4146
}
4247
}
@@ -49,10 +54,6 @@ class PHPLanguageInjector : MultiHostInjector {
4954
}
5055
}
5156

52-
val tagsMap = mapOf(
53-
"{!!" to "!!}",
54-
"{{" to "}}",
55-
)
5657
private fun injectIntoText(
5758
element: PsiLanguageInjectionHost,
5859
registrar: MultiHostRegistrar
@@ -62,17 +63,15 @@ class PHPLanguageInjector : MultiHostInjector {
6263
.apply { if (size < 2) return }
6364

6465
// println("children: $children")
65-
val openTag = children.find { it.text == "{!!" || it.text == "{{" }?.psi ?: return
66-
val closeTag = children.find { it.text == tagsMap[openTag.text] }?.psi
66+
val openTag = children.find { tagsMap.containsKey(it.text) }?.psi ?: return
67+
val closeTag = children.find { it.text == tagsMap[openTag.text] }?.psi ?: return
6768

6869
// println("openTag: ${openTag.text}, closeTag: ${closeTag?.text}")
69-
if ((openTag.text == "{!!" && closeTag?.text == "!!}") || (openTag.text == "{{" && closeTag?.text == "}}")) {
70-
val textRange = TextRange(openTag.textRangeInParent.endOffset, closeTag.startOffsetInParent)
70+
val textRange = TextRange(openTag.textRangeInParent.endOffset, closeTag.startOffsetInParent)
7171
// println("injecting ${language} into $element, $textRange")
72-
registrar.startInjecting(PhpLanguage.INSTANCE)
73-
.addPlace("<?=", "?>", element, textRange)
74-
.doneInjecting()
75-
}
72+
registrar.startInjecting(PhpLanguage.INSTANCE)
73+
.addPlace("<?=", "?>", element, textRange)
74+
.doneInjecting()
7675
}
7776

7877
override fun elementsToInjectIn() = listOf(

0 commit comments

Comments
 (0)