概要 circeのEncoder/Decoderの拡張で試行錯誤した結果をメモしておきます。 内容に間違いや他にもっと良い書き方があるなどありましたら、ご指摘いただけると助かります。 なお、環境は以下で実施しています。 Scala 2.12.1 circe 0.6.1 circeについて まずはcirceについて。 circeはScalaのJSONライブラリです。 特徴としては以下の通りです。 Typelevel.scala のプロジェクト Argonaut をforkして開発されている(ただし、Scalaz の代わりに cats に依存している) jawn による高速なJSONパース shapeless によるcase classのジェネリックな自動コーデック Monocle のLensによるJSONのトラバース Scala.js のサポート ちなみにcirceの読み方は最初「キルケ」だ