できる限り新しいマクロ構文を使用するようにビルドをアップグレードしていますが、flatMap
対処方法がわからない に遭遇しました。
次の形式のタスクがあったとしましょう
myTask <<= (foo, bar) flatMap { (x, y) => someFunctionProducingATask(x, y, 5) }
現在、Def.taskDyn
漠然と有望に見えますが、完全には適合しません。それを素朴なものに翻訳してもうまくいきません:
myTask <<= Def.taskDyn {
val x = foo.value
val y = bar.value
someFunctionProducingATask(x, y, 5) // ERROR: we need an Initialize[Task[...]], but have a Task[...]
}
Initialize
は単調に感じますが、そのための を見つけることができないので、pure
自分のタスクをそれに入れる方法、またはそれが望ましいかどうかさえわかりません。ドキュメントは、私が使用することを提案する以外に何も言っていないようですtaskDyn
。ここで何かアイデアはありますか?