You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
msg ="Instantiation of ${this.valueTypeDesc} value failed for JSON property ${jsonProp.name} due to missing (therefore NULL) value for creator parameter ${paramDef.name} which is a non-nullable type"
76
+
).wrapWithPath(this.valueClass, jsonProp.name)
77
+
}
78
+
79
+
if (strictNullChecks && paramVal !=null) {
80
+
var paramType:String?=null
81
+
var itemType:KType?=null
82
+
if (jsonProp.type.isCollectionLikeType && paramDef.type.arguments.getOrNull(0)?.type?.isMarkedNullable ==false&& (paramVal asCollection<*>).any { it ==null }) {
if (jsonProp.type.isArrayType && paramDef.type.arguments.getOrNull(0)?.type?.isMarkedNullable ==false&& (paramVal asArray<*>).any { it ==null }) {
93
+
paramType ="array"
94
+
itemType = paramDef.type.arguments[0].type
95
+
}
96
+
97
+
if (paramType !=null&& itemType !=null) {
98
+
throwMissingKotlinParameterException(
99
+
parameter = paramDef,
100
+
processor = ctxt.parser,
101
+
msg ="Instantiation of $itemType$paramType failed for JSON property ${jsonProp.name} due to null value in a $paramType that does not allow null values"
102
+
).wrapWithPath(this.valueClass, jsonProp.name)
103
+
}
104
+
}
105
+
106
+
bucket[idx] = paramVal
107
+
}
108
+
109
+
// TODO: Is it necessary to call them differently? Direct execution will perform better.
0 commit comments