Kotlin Contract
참조
Understanding Kotlin contracts. Since Kotlin 1.3 we can enjoy new… | by Marcin Moskala | Kt. Academy