Kotlinで未実装を表す方法
小ネタです。
Scalaでは ???
という関数を実行することで、未実装を表す scala.NotImplementedError
を返すことができます。
Kotlinにも例外 kotlin.NotImplementedError
があり、それを呼び出す関数として TODO()
が定義されています。
使い方
メソッドに対して、コンパイルを通しつつ未実装を表す場合は、以下のように書きます。 引数に文字列を指定することで、例外にコメントを追加することも可能です。
fun hoge(s: String): String = TODO() // 未実装コメントを追加することも可能。 fun fuga(s: String): String = TODO("未実装ですよ")
また、inline修飾子が付いているため、メソッドの途中に書くことでIntellijの場合はそれ以降の処理が実行されないという警告が表示されます。
fun foo(s: String): String = { println("before: $s") TODO() println("after: $s") }
まとめ
未実装を表す kotlin.NotImplementedError
と TODO()
について紹介しました。
TODO()
のように、例外のみを返すメソッドをインライン展開させるという書き方も便利なので、ぜひ使ってみてください。