This commit is contained in:
Horis
2024-09-15 15:37:25 +08:00
parent 8ae494056d
commit c892436c74
@@ -2,7 +2,6 @@ package io.legado.app.model.analyzeRule
import android.text.TextUtils import android.text.TextUtils
import androidx.annotation.Keep import androidx.annotation.Keep
import com.script.ScriptBindings
import com.script.buildScriptBindings import com.script.buildScriptBindings
import com.script.rhino.RhinoScriptEngine import com.script.rhino.RhinoScriptEngine
import io.legado.app.constant.AppPattern.JS_PATTERN import io.legado.app.constant.AppPattern.JS_PATTERN
@@ -31,7 +30,6 @@ import java.net.URL
import java.util.regex.Pattern import java.util.regex.Pattern
import kotlin.collections.component1 import kotlin.collections.component1
import kotlin.collections.component2 import kotlin.collections.component2
import kotlin.collections.set
import kotlin.coroutines.ContinuationInterceptor import kotlin.coroutines.ContinuationInterceptor
import kotlin.coroutines.CoroutineContext import kotlin.coroutines.CoroutineContext
import kotlin.coroutines.EmptyCoroutineContext import kotlin.coroutines.EmptyCoroutineContext
@@ -444,15 +442,10 @@ class AnalyzeRule(
/** /**
* getString 类规则缓存 * getString 类规则缓存
*/ */
fun splitSourceRuleCacheString(ruleStr: String?): List<SourceRule> { private fun splitSourceRuleCacheString(ruleStr: String?): List<SourceRule> {
if (ruleStr.isNullOrEmpty()) return emptyList() if (ruleStr.isNullOrEmpty()) return emptyList()
val cacheRule = stringRuleCache[ruleStr] return stringRuleCache.getOrPut(ruleStr) {
return if (cacheRule != null) { splitSourceRule(ruleStr)
cacheRule
} else {
val rules = splitSourceRule(ruleStr)
stringRuleCache[ruleStr] = rules
rules
} }
} }