Skip to content
This repository was archived by the owner on Jan 20, 2023. It is now read-only.

Commit dc60213

Browse files
committed
共通化対応
1 parent 817d4f5 commit dc60213

File tree

1 file changed

+5
-11
lines changed

1 file changed

+5
-11
lines changed

src/main/kotlin/com/mapk/krowmapper/ParameterForMap.kt

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,15 @@ import com.mapk.core.EnumMapper
55
import com.mapk.core.KFunctionWithInstance
66
import com.mapk.core.ValueParameter
77
import com.mapk.core.getAnnotatedFunctions
8+
import com.mapk.core.getAnnotatedFunctionsFromCompanionObject
89
import com.mapk.core.getKClass
910
import com.mapk.deserialization.AbstractKColumnDeserializer
1011
import com.mapk.deserialization.KColumnDeserializeBy
1112
import java.lang.IllegalArgumentException
1213
import java.sql.ResultSet
1314
import kotlin.reflect.KClass
1415
import kotlin.reflect.KFunction
15-
import kotlin.reflect.full.companionObjectInstance
1616
import kotlin.reflect.full.findAnnotation
17-
import kotlin.reflect.full.functions
1817
import kotlin.reflect.full.primaryConstructor
1918
import kotlin.reflect.full.staticFunctions
2019
import kotlin.reflect.jvm.isAccessible
@@ -114,14 +113,9 @@ private fun <T : Any> deserializerFromStaticMethods(clazz: KClass<T>): Collectio
114113

115114
@Suppress("UNCHECKED_CAST")
116115
private fun <T : Any> deserializerFromCompanionObject(clazz: KClass<T>): Collection<KFunction<T>> {
117-
return clazz.companionObjectInstance?.let { companionObject ->
118-
companionObject::class.functions
119-
.filter { it.annotations.any { annotation -> annotation is KColumnDeserializer } }
120-
.map { function ->
121-
KFunctionWithInstance(
122-
function,
123-
companionObject
124-
) as KFunction<T>
125-
}.toSet()
116+
return clazz.getAnnotatedFunctionsFromCompanionObject<KColumnDeserializer>()?.let { (instance, functions) ->
117+
functions.map {
118+
KFunctionWithInstance(it, instance) as KFunction<T>
119+
}
126120
} ?: emptySet()
127121
}

0 commit comments

Comments
 (0)