http サーバーを起動するときに、複数のエンドポイントを一緒に構成しようとしています。複数のエンドポイントは次のように定義されます。
val foo = get("foo") { Ok("bar") }
val test = get("test") { Ok("test") }
このコードは機能しています
foo :+: test
ただし、このコードは機能しません。
List(foo, test).reduceLeft(_ :+: _)
エラーは
type mismatch;
found : io.finch.Endpoint[shapeless.:+:[String,shapeless.:+:[String,shapeless.CNil]]]
required: io.finch.Endpoint[String]
val controllers = List(foo, test).reduce(_ :+: _)
^
reduce
ここで機能しない理由と、Finch でエンドポイントを組み合わせるベストプラクティスは何なのかよくわかりません