BuilderInference.<init>所在位置是kotlin.BuilderInference.<init>,其相關用法介紹如下。

用法:

BuilderInference()

允許從函數的注釋函數參數中的調用推斷函數的泛型類型參數。

當此注解放置在函數的泛型函數參數上時,它可以從傳遞給該參數的 lambda 主體推斷該泛型函數的類型參數。

影響推理的調用或者是帶注釋的函數參數的接收器類型的成員,或者是該類型的擴展。擴展本身必須使用 @BuilderInference 進行注釋。

示例:我們聲明

fun <T> sequence(@BuilderInference block: suspend SequenceScope<T>.() -> Unit): Sequence<T>

並像使用它一樣

val result = sequence { yield("result") }

在這裏,結果序列的類型參數從 SequenceScope.yield 函數的參數推斷為 String,該函數在傳遞給 sequence 的 lambda 內部調用。

注意:此注釋是實驗性的,請參閱ExperimentalTypeInference 了解如何選擇加入它。