Skip to content

Commit d192c92

Browse files
LlamaLad7Earthcomputer
authored andcommitted
Perf: Check canEverMatch in MixinSelector.matchMethod/Field
1 parent 7a45212 commit d192c92

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

src/main/kotlin/platform/mixin/reference/MixinSelectors.kt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,9 @@ interface MixinSelector {
105105
fun matchMethod(owner: String, name: String, desc: String): Boolean
106106

107107
fun matchField(field: PsiField, qualifier: PsiClass): Boolean {
108+
if (!canEverMatch(field.name)) {
109+
return false
110+
}
108111
val fqn = qualifier.fullQualifiedName ?: return false
109112
val desc = field.descriptor ?: return false
110113
return matchField(fqn.replace('.', '/'), field.name, desc)
@@ -115,6 +118,9 @@ interface MixinSelector {
115118
}
116119

117120
fun matchMethod(method: PsiMethod, qualifier: PsiClass): Boolean {
121+
if (!canEverMatch(method.name)) {
122+
return false
123+
}
118124
val fqn = qualifier.fullQualifiedName ?: return false
119125
val desc = method.descriptor ?: return false
120126
return matchMethod(fqn.replace('.', '/'), method.internalName, desc)

0 commit comments

Comments
 (0)