title: Kotlin Android: Property delegate must have a 'getValue(DashViewModel, KProperty*>)' method
body: <p>I am trying to follow the official Android guide for ViewModels in Kotlin.
  I literally copy pasted the easiest <a href="https://developer.android.com/topic/libraries/architecture/viewmodel#kotlin" rel="noreferrer">official example</a> but the syntax seems to be illegal.</p>
  <p>This section causes the problem:</p>
  <pre class="lang-kotlin prettyprint-override"><code>private val users: MutableLiveData&lt;List&lt;User&gt;&gt; by lazy {
      MutableLiveData().also {
          loadUsers()
      }
  }
  </code></pre>
  <p>The preview gives me this error:</p>
  <pre><code>Property delegate must have a 'getValue(DashViewModel, KProperty*&gt;)' method. None of the following functions is suitable.
  </code></pre>
  <p>And if I want to launch the App I get this error:</p>
  <pre><code>Type inference failed: Not enough information to infer parameter T in constructor MutableLiveData&lt;T : Any!&gt;()
  Please specify it explicitly.
  </code></pre>
  <p>I dont understand those two errors and other questions with the same error seem to have been caused by something different. My guess is that the <code>MutableLiveData().also</code> causes the problem but I do not know why. This is quite odd considering that this is an official example.</p>