Kotlin
Kotlin Contractsあまり理解していなかったのと、自分で書く必要があるとは思わなかったのでこんな所で使うんだなと思って書きました。 まずこのようなコードがあります。 時間を計測するKotlinのスタンダードライブラリの関数です。 public inline fun meas…
バージョン Kotlin 1.3.0 以下のコードでblock()はダメだけどblock.invoke()はスマートキャストされる。 class Hoge(val block: (() -> Unit)?) { fun hoge() { if (block != null) { block() // NG block.invoke() // OK } } } とりあえず探してみたらあっ…
Android data bindingで定義済みの属性リスト - Qiita 「android:onMenuItemClick」とか定義されてるはずなのに使えんなと思ってまさかと思い確認。 原因 extensions/baseAdapters/src/main/java/android/databinding/adapters/ToolbarBindingAdapter.java -…
エラー文 Error:java.lang.IllegalStateException: failed to analyze: android.databinding.tool.util.LoggedErrorException: Found data binding errors. ****/ data binding error ****msg:The expression [...] cannot be inverted: Two-way binding can…
よく忘れるのでまとめた。 スコープ拡張関数 関数名 it 戻り値 定義 also ○ 自身 fun T.also(block: (T) -> Unit): T { block(this); return this } apply ✕ 自身 fun T.apply(f: T.() -> Unit): T { f(); return this } let ○ 最後 fun T.let(f: (T) -> R):…