我想重命名Kotlin类型,保留不推荐使用的typealias以允许编译现有代码。

typealias TestContext<F> = ContextBuilder<F>
@Deprecated("TestContext is now ContextBuilder",
    replaceWith = ReplaceWith("ContextBuilder<F>"))

导致TextContext<Unit>替换为ContextBuilder<F>
@Deprecated("TestContext is now ContextBuilder",
    replaceWith = ReplaceWith("ContextBuilder"))

导致TextContext<Unit>替换为ContextBuilder
如何编写replaceWith表达式,以便IntelliJ用TextContext<Unit>替换ContextBuilder<Unit>

最佳答案

现在有可能! ReplaceWith意图从Kotlin插件v1.3.40开始保存通用类型参数(请参阅change log)。

关于kotlin - 如何在Kotlin @Deprecated批注中指定泛型类型参数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54449230/

10-11 14:32