From f2a37b41500c07c7188cd13051d768fbf3069c9f Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Mon, 26 Oct 2015 15:08:04 +0300 Subject: [PATCH] Minor, move KProperty for property references to separate file --- .../reflect/jvm/internal/KProperty0Impl.kt | 32 -------- .../reflect/jvm/internal/KProperty1Impl.kt | 32 -------- .../reflect/jvm/internal/KProperty2Impl.kt | 31 -------- .../internal/KPropertyFromReferenceImpl.kt | 73 +++++++++++++++++++ 4 files changed, 73 insertions(+), 95 deletions(-) create mode 100644 core/reflection.jvm/src/kotlin/reflect/jvm/internal/KPropertyFromReferenceImpl.kt diff --git a/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KProperty0Impl.kt b/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KProperty0Impl.kt index 165a35e74e1..4b7a283c63d 100644 --- a/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KProperty0Impl.kt +++ b/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KProperty0Impl.kt @@ -17,8 +17,6 @@ package kotlin.reflect.jvm.internal import org.jetbrains.kotlin.descriptors.PropertyDescriptor -import kotlin.jvm.internal.MutablePropertyReference0 -import kotlin.jvm.internal.PropertyReference0 import kotlin.reflect.KMutableProperty0 import kotlin.reflect.KProperty0 @@ -49,33 +47,3 @@ internal open class KMutableProperty0Impl : KProperty0Impl, KMutableProper override fun invoke(value: R): Unit = property.set(value) } } - - -internal class KProperty0FromReferenceImpl( - val reference: PropertyReference0 -) : KProperty0Impl( - reference.owner as KDeclarationContainerImpl, - reference.name, - reference.signature -) { - override val name: String get() = reference.name - - override fun get(): Any? = reference.get() -} - - -internal class KMutableProperty0FromReferenceImpl( - val reference: MutablePropertyReference0 -) : KMutableProperty0Impl( - reference.owner as KDeclarationContainerImpl, - reference.name, - reference.signature -) { - override val name: String get() = reference.name - - override fun get(): Any? = reference.get() - - override fun set(value: Any?) { - reference.set(value) - } -} diff --git a/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KProperty1Impl.kt b/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KProperty1Impl.kt index ab1dd395595..74c4d63b7a4 100644 --- a/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KProperty1Impl.kt +++ b/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KProperty1Impl.kt @@ -17,8 +17,6 @@ package kotlin.reflect.jvm.internal import org.jetbrains.kotlin.descriptors.PropertyDescriptor -import kotlin.jvm.internal.MutablePropertyReference1 -import kotlin.jvm.internal.PropertyReference1 import kotlin.reflect.KMutableProperty1 import kotlin.reflect.KProperty1 @@ -49,33 +47,3 @@ internal open class KMutableProperty1Impl : KProperty1Impl, KMutable override fun invoke(receiver: T, value: R): Unit = property.set(receiver, value) } } - - -internal class KProperty1FromReferenceImpl( - val reference: PropertyReference1 -) : KProperty1Impl( - reference.owner as KDeclarationContainerImpl, - reference.name, - reference.signature -) { - override val name: String get() = reference.name - - override fun get(receiver: Any?): Any? = reference.get(receiver) -} - - -internal class KMutableProperty1FromReferenceImpl( - val reference: MutablePropertyReference1 -) : KMutableProperty1Impl( - reference.owner as KDeclarationContainerImpl, - reference.name, - reference.signature -) { - override val name: String get() = reference.name - - override fun get(receiver: Any?): Any? = reference.get(receiver) - - override fun set(receiver: Any?, value: Any?) { - reference.set(receiver, value) - } -} diff --git a/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KProperty2Impl.kt b/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KProperty2Impl.kt index 1ee7e3f43df..a3755ca168d 100644 --- a/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KProperty2Impl.kt +++ b/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KProperty2Impl.kt @@ -17,8 +17,6 @@ package kotlin.reflect.jvm.internal import org.jetbrains.kotlin.descriptors.PropertyDescriptor -import kotlin.jvm.internal.MutablePropertyReference2 -import kotlin.jvm.internal.PropertyReference2 import kotlin.reflect.KMutableProperty2 import kotlin.reflect.KProperty2 @@ -49,32 +47,3 @@ internal open class KMutableProperty2Impl : KProperty2Impl, KM override fun invoke(receiver1: D, receiver2: E, value: R): Unit = property.set(receiver1, receiver2, value) } } - - -internal class KProperty2FromReferenceImpl( - val reference: PropertyReference2 -) : KProperty2Impl( - reference.owner as KDeclarationContainerImpl, - reference.name, - reference.signature -) { - override val name: String get() = reference.name - - override fun get(receiver1: Any?, receiver2: Any?): Any? = reference.get(receiver1, receiver2) -} - -internal class KMutableProperty2FromReferenceImpl( - val reference: MutablePropertyReference2 -) : KMutableProperty2Impl( - reference.owner as KDeclarationContainerImpl, - reference.name, - reference.signature -) { - override val name: String get() = reference.name - - override fun get(receiver1: Any?, receiver2: Any?): Any? = reference.get(receiver1, receiver2) - - override fun set(receiver1: Any?, receiver2: Any?, value: Any?) { - reference.set(receiver1, receiver2, value) - } -} diff --git a/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KPropertyFromReferenceImpl.kt b/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KPropertyFromReferenceImpl.kt new file mode 100644 index 00000000000..bf13fe1599c --- /dev/null +++ b/core/reflection.jvm/src/kotlin/reflect/jvm/internal/KPropertyFromReferenceImpl.kt @@ -0,0 +1,73 @@ +/* + * Copyright 2010-2015 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package kotlin.reflect.jvm.internal + +import kotlin.jvm.internal.* + +internal class KProperty0FromReferenceImpl( + val reference: PropertyReference0 +) : KProperty0Impl(reference.owner as KDeclarationContainerImpl, reference.name, reference.signature) { + override val name: String get() = reference.name + + override fun get(): Any? = reference.get() +} + +internal class KMutableProperty0FromReferenceImpl( + val reference: MutablePropertyReference0 +) : KMutableProperty0Impl(reference.owner as KDeclarationContainerImpl, reference.name, reference.signature) { + override val name: String get() = reference.name + + override fun get(): Any? = reference.get() + + override fun set(value: Any?) = reference.set(value) +} + +internal class KProperty1FromReferenceImpl( + val reference: PropertyReference1 +) : KProperty1Impl(reference.owner as KDeclarationContainerImpl, reference.name, reference.signature) { + override val name: String get() = reference.name + + override fun get(receiver: Any?): Any? = reference.get(receiver) +} + +internal class KMutableProperty1FromReferenceImpl( + val reference: MutablePropertyReference1 +) : KMutableProperty1Impl(reference.owner as KDeclarationContainerImpl, reference.name, reference.signature) { + override val name: String get() = reference.name + + override fun get(receiver: Any?): Any? = reference.get(receiver) + + override fun set(receiver: Any?, value: Any?) = reference.set(receiver, value) +} + +internal class KProperty2FromReferenceImpl( + val reference: PropertyReference2 +) : KProperty2Impl(reference.owner as KDeclarationContainerImpl, reference.name, reference.signature) { + override val name: String get() = reference.name + + override fun get(receiver1: Any?, receiver2: Any?): Any? = reference.get(receiver1, receiver2) +} + +internal class KMutableProperty2FromReferenceImpl( + val reference: MutablePropertyReference2 +) : KMutableProperty2Impl(reference.owner as KDeclarationContainerImpl, reference.name, reference.signature) { + override val name: String get() = reference.name + + override fun get(receiver1: Any?, receiver2: Any?): Any? = reference.get(receiver1, receiver2) + + override fun set(receiver1: Any?, receiver2: Any?, value: Any?) = reference.set(receiver1, receiver2, value) +}