title: Kotlin callback immediate callback from an if statement
body: <p>This smells funny because of the two calls to startSync():</p>
  
  <pre><code>override fun onDataChange(dataSnapshot: DataSnapshot) {
      if (null == dataSnapshot.value) {
          aThing.putAll(defaultConfig)
          dbRef.setValue(botState) { _, _ -&gt; startSync() }
      } else {
          startSync()
      }
  }
  </code></pre>
  
  <p>Is there a Kotlin friendly way of saying "If X then do Y with callback Z(), otherwise do nothing with immediate callback Z()"? But without having to have Z() twice.</p>
  
  <p>I'm coming from JavaScript, where a <code>Promise.resolve().then...</code> would have fit the bill.</p>