Set method should not accept vararg

This commit is contained in:
Valentin Kipyatkov
2015-07-09 12:53:11 +03:00
parent 82f1eafa0b
commit 2ec6f50402
3 changed files with 9 additions and 1 deletions
@@ -74,7 +74,9 @@ class SyntheticExtensionsScope(storageManager: StorageManager) : JetScope by Jet
}
private fun isGoodSetMethod(descriptor: FunctionDescriptor, propertyType: JetType): Boolean {
return descriptor.getValueParameters().singleOrNull()?.getType() == propertyType
val parameter = descriptor.getValueParameters().singleOrNull() ?: return false
return parameter.getType() == propertyType
&& parameter.getVarargElementType() == null
&& descriptor.getTypeParameters().isEmpty()
&& descriptor.getReturnType()?.let { KotlinBuiltIns.isUnit(it) } ?: false
&& descriptor.getVisibility() == Visibilities.PUBLIC