Minor. Adjust generic parameter naming

This commit is contained in:
Denis Zharkov
2015-12-14 19:01:34 +03:00
parent b4bb92d136
commit 5df2a58003
@@ -21,25 +21,25 @@ import org.jetbrains.kotlin.utils.DFS
import org.jetbrains.kotlin.utils.SmartSet
import java.util.*
fun <TDescriptor : CallableDescriptor> TDescriptor.findTopMostOverriddenDescriptors(): List<TDescriptor> {
fun <D : CallableDescriptor> D.findTopMostOverriddenDescriptors(): List<D> {
return DFS.dfs(
listOf(this),
{ current -> current.overriddenDescriptors },
object : DFS.CollectingNodeHandler<CallableDescriptor, CallableDescriptor, ArrayList<TDescriptor>>(ArrayList<TDescriptor>()) {
object : DFS.CollectingNodeHandler<CallableDescriptor, CallableDescriptor, ArrayList<D>>(ArrayList<D>()) {
override fun afterChildren(current: CallableDescriptor) {
if (current.overriddenDescriptors.isEmpty()) {
@Suppress("UNCHECKED_CAST")
result.add(current as TDescriptor)
result.add(current as D)
}
}
})
}
fun <TDescriptor : CallableDescriptor> TDescriptor.findOriginalTopMostOverriddenDescriptors(): Set<TDescriptor> {
return findTopMostOverriddenDescriptors().mapTo(LinkedHashSet<TDescriptor>()) {
fun <D : CallableDescriptor> D.findOriginalTopMostOverriddenDescriptors(): Set<D> {
return findTopMostOverriddenDescriptors().mapTo(LinkedHashSet<D>()) {
@Suppress("UNCHECKED_CAST")
(it.original as TDescriptor)
(it.original as D)
}
}