問題タブ [cats-effect]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
709 参照

scala - タイプ User の Read インスタンスを作成できません。Scala での Doobie の型の誤解

doobie、http4s、および cat を使用して、データベースから User レコードを取得しようとしています。以下のコードに基づいて次のエラーを提供している型システムに悩まされています。

ルーター:

モデル:

エラー:

行を ConnectionIO[Option[User] から ConnectionIO[Option[Unit]] に変更すると、コンパイルして実行されますが、cats ライブラリから Free(...) オブジェクトが返されます。ケースクラスを返すことができない理由がわかりません!

findBy および findById メソッドの型宣言も参照してください。それらを追加する前に、ユーザーが見つかったというコンパイル エラーがありましたが、Read[User] が必要でした。同じ型宣言をルーターの findById の呼び出しに適用しようとしましたが、上記と同じエラーが発生しました。

事前に助けてくれてありがとう、そして私の無知を我慢してください。私よりもはるかに賢い型システムに出会ったことはありません!