diff --git a/libraries/stdlib/src/kotlin/properties/Delegation.kt b/libraries/stdlib/src/kotlin/properties/Delegation.kt index 9398428f9d2..16e3e6792ce 100644 --- a/libraries/stdlib/src/kotlin/properties/Delegation.kt +++ b/libraries/stdlib/src/kotlin/properties/Delegation.kt @@ -1,46 +1,5 @@ package kotlin.properties -/** - * Base interface that can be used for implementing property delegates of read-only properties. This is provided only for - * convenience; you don't have to extend this interface as long as your property delegate has methods with the same - * signatures. - * @param R the type of object which owns the delegated property. - * @param T the type of the property value. - */ -public interface ReadOnlyProperty { - /** - * Returns the value of the property for the given object. - * @param thisRef the object for which the value is requested. - * @param desc the metadata for the property. - * @return the property value. - */ - public fun get(thisRef: R, desc: PropertyMetadata): T -} - -/** - * Base interface that can be used for implementing property delegates of read-only properties. This is provided only for - * convenience; you don't have to extend this interface as long as your property delegate has methods with the same - * signatures. - * @param R the type of object which owns the delegated property. - * @param T the type of the property value. - */ -public interface ReadWriteProperty { - /** - * Returns the value of the property for the given object. - * @param thisRef the object for which the value is requested. - * @param desc the metadata for the property. - * @return the property value. - */ - public fun get(thisRef: R, desc: PropertyMetadata): T - - /** - * Sets the value of the property for the given object. - * @param thisRef the object for which the value is requested. - * @param desc the metadata for the property. - * @param value the value to set. - */ - public fun set(thisRef: R, desc: PropertyMetadata, value: T) -} /** * Standard property delegates. diff --git a/libraries/stdlib/src/kotlin/properties/Interfaces.kt b/libraries/stdlib/src/kotlin/properties/Interfaces.kt new file mode 100644 index 00000000000..871a25b7db7 --- /dev/null +++ b/libraries/stdlib/src/kotlin/properties/Interfaces.kt @@ -0,0 +1,48 @@ +package kotlin.properties + + +/** + * Base interface that can be used for implementing property delegates of read-only properties. + * + * This is provided only for convenience; you don't have to extend this interface + * as long as your property delegate has methods with the same signatures. + * + * @param R the type of object which owns the delegated property. + * @param T the type of the property value. + */ +public interface ReadOnlyProperty { + /** + * Returns the value of the property for the given object. + * @param thisRef the object for which the value is requested. + * @param desc the metadata for the property. + * @return the property value. + */ + public fun get(thisRef: R, desc: PropertyMetadata): T +} + +/** + * Base interface that can be used for implementing property delegates of read-write properties. + * + * This is provided only for convenience; you don't have to extend this interface + * as long as your property delegate has methods with the same signatures. + * + * @param R the type of object which owns the delegated property. + * @param T the type of the property value. + */ +public interface ReadWriteProperty { + /** + * Returns the value of the property for the given object. + * @param thisRef the object for which the value is requested. + * @param desc the metadata for the property. + * @return the property value. + */ + public fun get(thisRef: R, desc: PropertyMetadata): T + + /** + * Sets the value of the property for the given object. + * @param thisRef the object for which the value is requested. + * @param desc the metadata for the property. + * @param value the value to set. + */ + public fun set(thisRef: R, desc: PropertyMetadata, value: T) +}