Minor. Specify visibility for some declarations in typeEnhacement

This commit is contained in:
Denis Zharkov
2015-07-02 12:55:53 +03:00
parent c769748cb0
commit 4710168c5a
3 changed files with 11 additions and 12 deletions
@@ -22,17 +22,16 @@ import org.jetbrains.kotlin.descriptors.ReceiverParameterDescriptor
import org.jetbrains.kotlin.descriptors.ValueParameterDescriptor import org.jetbrains.kotlin.descriptors.ValueParameterDescriptor
import org.jetbrains.kotlin.descriptors.impl.ValueParameterDescriptorImpl import org.jetbrains.kotlin.descriptors.impl.ValueParameterDescriptorImpl
import org.jetbrains.kotlin.load.java.typeEnhacement.computeIndexedQualifiersForOverride import org.jetbrains.kotlin.load.java.typeEnhacement.computeIndexedQualifiersForOverride
import org.jetbrains.kotlin.load.java.typeEnhacement.enhance
import org.jetbrains.kotlin.load.java.descriptors.JavaCallableMemberDescriptor import org.jetbrains.kotlin.load.java.descriptors.JavaCallableMemberDescriptor
import org.jetbrains.kotlin.types.JetType import org.jetbrains.kotlin.types.JetType
fun <D : CallableMemberDescriptor> enhanceSignatures(platformSignatures: Collection<D>): Collection<D> { public fun <D : CallableMemberDescriptor> enhanceSignatures(platformSignatures: Collection<D>): Collection<D> {
return platformSignatures.map { return platformSignatures.map {
it.enhance() it.enhance()
} }
} }
fun <D : CallableMemberDescriptor> D.enhance(): D { private fun <D : CallableMemberDescriptor> D.enhance(): D {
// TODO type parameters // TODO type parameters
// TODO use new type parameters while enhancing other types // TODO use new type parameters while enhancing other types
// TODO Propagation into generic type arguments // TODO Propagation into generic type arguments
@@ -75,13 +74,13 @@ interface SignaturePart<out T> {
fun replaceType(newType: JetType): T fun replaceType(newType: JetType): T
} }
fun ReceiverParameterDescriptor.toPart() = object : SignaturePart<JetType> { private fun ReceiverParameterDescriptor.toPart() = object : SignaturePart<JetType> {
override val type = this@toPart.getType() // workaround for KT-7557 override val type = this@toPart.getType() // workaround for KT-7557
override fun replaceType(newType: JetType) = newType override fun replaceType(newType: JetType) = newType
} }
fun ValueParameterDescriptor.toPart() = object : SignaturePart<ValueParameterDescriptor> { private fun ValueParameterDescriptor.toPart() = object : SignaturePart<ValueParameterDescriptor> {
override val type = this@toPart.getType() // workaround for KT-7557 override val type = this@toPart.getType() // workaround for KT-7557
override fun replaceType(newType: JetType) = ValueParameterDescriptorImpl( override fun replaceType(newType: JetType) = ValueParameterDescriptorImpl(
@@ -97,7 +96,7 @@ fun ValueParameterDescriptor.toPart() = object : SignaturePart<ValueParameterDes
) )
} }
fun JetType.toReturnTypePart() = object : SignaturePart<JetType> { private fun JetType.toReturnTypePart() = object : SignaturePart<JetType> {
override val type = this@toReturnTypePart override val type = this@toReturnTypePart
override val isCovariant: Boolean = true override val isCovariant: Boolean = true
@@ -105,7 +104,7 @@ fun JetType.toReturnTypePart() = object : SignaturePart<JetType> {
override fun replaceType(newType: JetType) = newType override fun replaceType(newType: JetType) = newType
} }
fun <D : CallableMemberDescriptor, T, P : SignaturePart<T>> D.parts(collector: (D) -> P): SignatureParts<T, P> { private fun <D : CallableMemberDescriptor, T, P : SignaturePart<T>> D.parts(collector: (D) -> P): SignatureParts<T, P> {
return SignatureParts( return SignatureParts(
collector(this), collector(this),
this.getOverriddenDescriptors().map { this.getOverriddenDescriptors().map {
@@ -39,7 +39,7 @@ private enum class TypeComponentPosition {
INFLEXIBLE INFLEXIBLE
} }
data class Result(val type: JetType, val subtreeSize: Int) private data class Result(val type: JetType, val subtreeSize: Int)
private fun JetType.enhancePossiblyFlexible(qualifiers: (Int) -> JavaTypeQualifiers, index: Int): Result { private fun JetType.enhancePossiblyFlexible(qualifiers: (Int) -> JavaTypeQualifiers, index: Int): Result {
if (this.isError()) return Result(this, 1) if (this.isError()) return Result(this, 1)
@@ -36,11 +36,11 @@ enum class NullabilityQualifier {
NOT_NULL NOT_NULL
} }
val NULLABLE_ANNOTATIONS = listOf( private val NULLABLE_ANNOTATIONS = listOf(
JvmAnnotationNames.JETBRAINS_NULLABLE_ANNOTATION JvmAnnotationNames.JETBRAINS_NULLABLE_ANNOTATION
) )
val NOT_NULL_ANNOTATIONS = listOf( private val NOT_NULL_ANNOTATIONS = listOf(
JvmAnnotationNames.JETBRAINS_NOT_NULL_ANNOTATION JvmAnnotationNames.JETBRAINS_NOT_NULL_ANNOTATION
) )
@@ -49,11 +49,11 @@ enum class MutabilityQualifier {
MUTABLE MUTABLE
} }
val READ_ONLY_ANNOTATIONS = listOf( private val READ_ONLY_ANNOTATIONS = listOf(
JvmAnnotationNames.JETBRAINS_READONLY_ANNOTATION JvmAnnotationNames.JETBRAINS_READONLY_ANNOTATION
) )
val MUTABLE_ANNOTATIONS = listOf( private val MUTABLE_ANNOTATIONS = listOf(
JvmAnnotationNames.JETBRAINS_MUTABLE_ANNOTATION JvmAnnotationNames.JETBRAINS_MUTABLE_ANNOTATION
) )