From ceb75cc02a7e483e61d982dd688f0697a989e201 Mon Sep 17 00:00:00 2001 From: wrongwrong Date: Thu, 23 Jul 2020 17:37:53 +0900 Subject: [PATCH] =?UTF-8?q?apply=E3=81=A7=E7=B0=A1=E7=95=A5=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/kotlin/com/mapk/kmapper/BoundKMapper.kt | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/src/main/kotlin/com/mapk/kmapper/BoundKMapper.kt b/src/main/kotlin/com/mapk/kmapper/BoundKMapper.kt index 54f7890..fac4864 100644 --- a/src/main/kotlin/com/mapk/kmapper/BoundKMapper.kt +++ b/src/main/kotlin/com/mapk/kmapper/BoundKMapper.kt @@ -38,16 +38,13 @@ class BoundKMapper private constructor( parameters = function.requiredParameters .mapNotNull { - val temp = srcPropertiesMap[it.name]?.let { property -> + srcPropertiesMap[it.name]?.let { property -> BoundParameterForMap.newInstance(it, property, parameterNameConverter) + }.apply { + // 必須引数に対応するプロパティがsrcに定義されていない場合エラー + if (this == null && !it.isOptional) + throw IllegalArgumentException("Property ${it.name} is not declared in ${src.jvmName}.") } - - // 必須引数に対応するプロパティがsrcに定義されていない場合エラー - if (temp == null && !it.isOptional) { - throw IllegalArgumentException("Property ${it.name} is not declared in ${src.jvmName}.") - } - - temp } }