chore(purity): Update to @Cache version

This commit is contained in:
yairm210
2025-07-25 12:33:17 +03:00
parent 25b7e37cee
commit ed84e89927
4 changed files with 8 additions and 5 deletions

View File

@ -30,6 +30,7 @@ kotlin {
jvm()
}
// Plugins used for serialization of JSON for networking
plugins {
id("io.gitlab.arturbosch.detekt").version("1.23.0-RC3")
@ -37,7 +38,7 @@ plugins {
// This is *with* gradle 8.2 downloaded according the project specs, no idea what that's about
kotlin("multiplatform") version "1.9.24"
kotlin("plugin.serialization") version "1.9.24"
id("io.github.yairm210.purity-plugin") version "0.0.36" apply(false)
id("io.github.yairm210.purity-plugin") version "0.0.38" apply(false)
}
allprojects {
@ -169,7 +170,7 @@ project(":core") {
"implementation"("org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutinesVersion")
"implementation"("org.jetbrains.kotlin:kotlin-reflect:$kotlinVersion")
"implementation"("io.github.yairm210:purity-annotations:0.0.32")
"implementation"("io.github.yairm210:purity-annotations:0.0.38")
"implementation"("io.ktor:ktor-client-core:$ktorVersion")
"implementation"("io.ktor:ktor-client-cio:$ktorVersion")

View File

@ -61,6 +61,7 @@ class TileImprovementFunctions(val tile: Tile) {
isNormalizeCheck: Boolean = false
): Boolean {
@Readonly
fun TileImprovement.canBeBuiltOnThisUnbuildableTerrain(
knownFeatureRemovals: List<TileImprovement>? = null,
): Boolean {

View File

@ -12,7 +12,7 @@ import com.unciv.models.ruleset.unique.UniqueType
import com.unciv.ui.components.extensions.colorFromRGB
import com.unciv.ui.objectdescriptions.uniquesToCivilopediaTextLines
import com.unciv.ui.screens.civilopediascreen.FormattedLine
import yairm210.purity.annotations.LocalState
import yairm210.purity.annotations.Cache
import yairm210.purity.annotations.Readonly
class Terrain : RulesetStatsObject() {
@ -161,7 +161,7 @@ class Terrain : RulesetStatsObject() {
}
/** Terrain filter matching is "pure" - input always returns same output, and it's called a bajillion times */
@LocalState val cachedMatchesFilterResult = HashMap<String, Boolean>()
@Cache private val cachedMatchesFilterResult = HashMap<String, Boolean>()
@Readonly
fun matchesFilter(filter: String, state: GameContext? = null, multiFilter: Boolean = true): Boolean {

View File

@ -25,6 +25,7 @@ import com.unciv.ui.components.extensions.toPercent
import com.unciv.ui.objectdescriptions.BaseUnitDescriptions
import com.unciv.ui.screens.civilopediascreen.FormattedLine
import com.unciv.utils.yieldIfNotNull
import yairm210.purity.annotations.Cache
import yairm210.purity.annotations.LocalState
import yairm210.purity.annotations.Readonly
import kotlin.math.pow
@ -411,7 +412,7 @@ class BaseUnit : RulesetObject(), INonPerpetualConstruction {
}
@LocalState private val cachedMatchesFilterResult = HashMap<String, Boolean>()
@Cache private val cachedMatchesFilterResult = HashMap<String, Boolean>()
/** Implements [UniqueParameterType.BaseUnitFilter][com.unciv.models.ruleset.unique.UniqueParameterType.BaseUnitFilter] */
@Readonly