Put argument name hint before spread element

#KT-21645 Fixed
This commit is contained in:
Dmitry Jemerov
2017-12-19 14:17:58 +01:00
parent c336159b2b
commit b0b69b2ad0
2 changed files with 8 additions and 1 deletions
@@ -69,7 +69,8 @@ private fun getParameterInfoForCallCandidate(resolvedCall: ResolvedCall<out Call
arg.getArgumentExpression()?.let { argExp ->
if (!arg.isNamed() && !valueParam.name.isSpecial && argExp.isUnclearExpression()) {
val prefix = if (valueParam.varargElementType != null) "..." else ""
return@mapNotNull InlayInfo(prefix + valueParam.name.identifier, argExp.startOffset)
return@mapNotNull InlayInfo(prefix + valueParam.name.identifier,
arg.getSpreadElement()?.startOffset ?: argExp.startOffset)
}
}
}
@@ -178,4 +178,10 @@ annotation class ManyArgs(val name: String, val surname: String)
x.foo("123")
}""")
}
fun `test spread`() {
check("""fun foo(vararg x: Int) {
intArrayOf(1, 0).apply { foo(<hint text="...x:" />*this) }
}""")
}
}