Kotlin:显式未命名的函数参数

时间:2018-06-04 00:35:53

标签: kotlin arguments named

Refused to display 'https://www.facebook.com/login.php? 
skip_api_login=1&api_key=[redacted]' in a frame because it set 'X-Frame-Options' to 'deny'.

当我实现这个界面时:

@FunctionalInterface
interface Fn2<A, B, R> : BiFunction<A, B, R>, (A, B) -> R {
    @JvmDefault
    override operator fun invoke(p1: A, p2: B): R {
        ...

我收到警告:

  

警告:(598,76)Kotlin:超类型中的相应参数   &#39; Fn2的&#39;被命名为&#39; a&#39;。调用此函数时,这可能会导致问题   使用命名参数。

是否有某种注释或关键字或机密名称(如object: Fn2<Int,Int,Int> { override fun invokeEx(accum: Int, i: Int): Int = accum + i } it),我可以在_函数定义中使用它来消除这些警告。我承认我做了一些非标准的Java / Kotlin互操作,当我完成重构时可能会消失,但我仍然很好奇。

我知道那里有invoke()thank you evilbloodydemon),但我正在寻找一种方法来抑制它在我覆盖的功能签名上,而不是在实施

1 个答案:

答案 0 :(得分:3)

从Kotlin 1.2.40开始,没有可能将函数参数标记为明确未命名,并且我不知道有任何增加这种可能性的计划。