From db049c0ab6775a0e4395fc45a769fd9877e5e5bc Mon Sep 17 00:00:00 2001 From: Ilya Gorbunov Date: Fri, 3 Nov 2017 20:55:10 +0300 Subject: [PATCH] Introduce deprecated helpers to ease migration --- .../src/templates/dsl/MemberBuilder.kt | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/libraries/tools/kotlin-stdlib-gen/src/templates/dsl/MemberBuilder.kt b/libraries/tools/kotlin-stdlib-gen/src/templates/dsl/MemberBuilder.kt index 25459134b8a..f38525a1058 100644 --- a/libraries/tools/kotlin-stdlib-gen/src/templates/dsl/MemberBuilder.kt +++ b/libraries/tools/kotlin-stdlib-gen/src/templates/dsl/MemberBuilder.kt @@ -59,6 +59,8 @@ class MemberBuilder( var deprecate: Deprecation? = null; private set var since: String? = null; private set var platformName: String? = null; private set + @Deprecated("Use platforms when building template") + var jvmOnly: Boolean = false var visibility: String? = null; private set var external: Boolean = false; private set @@ -102,6 +104,8 @@ class MemberBuilder( signature = value } fun returns(type: String) { returns = type } + @Deprecated("Use specialFor", ReplaceWith("specialFor(*fs) { returns(run(valueBuilder)) }")) + fun returns(vararg fs: Family, valueBuilder: () -> String) = specialFor(*fs) { returns(run(valueBuilder)) } fun typeParam(typeParameterName: String) { typeParams += typeParameterName @@ -119,6 +123,9 @@ class MemberBuilder( doc = valueBuilder(DocExtensions) } + @Deprecated("Use specialFor", ReplaceWith("specialFor(*fs) { doc(valueBuilder) }")) + fun doc(vararg fs: Family, valueBuilder: DocExtensions.() -> String) = specialFor(*fs) { doc(valueBuilder) } + fun body(valueBuilder: () -> String) { body = valueBuilder() } @@ -323,6 +330,11 @@ class MemberBuilder( builder.append("@kotlin.internal.InlineOnly").append('\n') } + if (jvmOnly) { + builder.append("@kotlin.jvm.JvmVersion").append('\n') + } + + listOfNotNull( visibility ?: "public", "expect".takeIf { headerOnly },