問題タブ [circe]

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 投票する
2 に答える
7256 参照

json - オブジェクトを明確にせずに circe で ADT をデコードする方法

次のような ADT があるとします。

CirceDecoder[Event]のインスタンスのデフォルトの一般的な派生では、入力 JSON に、どのケース クラスが表されているかを示すラッパー オブジェクトが含まれていることが想定されます。

この動作は、2 つ以上のケース クラスが同じメンバー名を持っている場合にあいまいさを心配する必要がないことを意味しますが、常に望んでいるとは限りません。各ケース クラスを試す必要があります。

ラッパーなしで ADTをエンコードおよびデコードするにはどうすればよいですかEvent(できれば、エンコーダーとデコーダーを最初から作成する必要はありません)。

(この質問はかなり頻繁に出てきます。たとえば、今朝の Gitterに関する Igor Mazor とのディスカッションを参照してください。)

0 投票する
2 に答える
844 参照

scala - scalaz.Maybe 用の Circe デコーダー

これは、circe をデコーダーとして使用する単純なフィンチ サーバーです。

を に変更するmyValueOption、すぐに使用でき、上記のコードと同じ結果が得られます。ただし、次のように変更しますscalaz.Maybe

結果:

Response("HTTP/1.1 Status(400)"): {"メッセージ":"本文を Test に変換できません: CNil: El(DownField(myValue),true,false)."}

必要なエンコーダー/デコーダーをどのように実装すればよいですか?