From bdf99d01a6ae711a634d8f938fd132193a521694 Mon Sep 17 00:00:00 2001 From: tarsin Date: Sat, 29 Apr 2023 12:21:15 +0800 Subject: [PATCH] Optimize EhFilter comment regex memory allocation --- app/src/main/java/com/hippo/ehviewer/client/EhFilter.kt | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/hippo/ehviewer/client/EhFilter.kt b/app/src/main/java/com/hippo/ehviewer/client/EhFilter.kt index c3f984ee2..11823a774 100644 --- a/app/src/main/java/com/hippo/ehviewer/client/EhFilter.kt +++ b/app/src/main/java/com/hippo/ehviewer/client/EhFilter.kt @@ -16,10 +16,13 @@ package com.hippo.ehviewer.client import android.util.Log +import arrow.core.memoize import com.hippo.ehviewer.EhDB import com.hippo.ehviewer.client.data.GalleryInfo import com.hippo.ehviewer.dao.Filter +private val regex = { p: Filter -> Regex(p.text!!) }.memoize() + object EhFilter { val titleFilterList = mutableListOf() val uploaderFilterList = mutableListOf() @@ -170,6 +173,6 @@ object EhFilter { @Synchronized fun filterComment(comment: String): Boolean { - return commentFilterList.contains { it.enable!! && Regex(it.text!!).containsMatchIn(comment) } + return commentFilterList.contains { it.enable!! && regex(it).containsMatchIn(comment) } } }