Add validator for unique serial names
This commit is contained in:
+8
@@ -51,6 +51,14 @@ class SerializableProperties(private val serializableClass: ClassDescriptor, val
|
||||
else
|
||||
SerializableProperties(supers, bindingContext).serializableProperties + first + second
|
||||
}
|
||||
.also(::validateUniqueSerialNames)
|
||||
|
||||
private fun validateUniqueSerialNames(props: List<SerializableProperty>) {
|
||||
val namesSet = mutableSetOf<String>()
|
||||
props.forEach {
|
||||
if (!namesSet.add(it.name)) throw IllegalStateException("$serializableClass has duplicate serial name of property ${it.name}, either in it or its parents.")
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private fun isPropSerializable(it: PropertyDescriptor) =
|
||||
|
||||
Reference in New Issue
Block a user