flix

0.73.0

Util.Json.ToJson

trait ToJson[a: Type]Source

A trait for types that can be encoded as a Json value.

Instances

instance ToJson[Json]Source
instance ToJson[Unit]Source
instance ToJson[Bool]Source
instance ToJson[String]Source
instance ToJson[Int8]Source
instance ToJson[Int16]Source
instance ToJson[Int32]Source
instance ToJson[Int64]Source
instance ToJson[BigInt]Source
instance ToJson[BigDecimal]Source
instance ToJson[Float32]Source

NaN and infinities are not representable in JSON (RFC 8259) and become JNull.

instance ToJson[Float64]Source

NaN and infinities are not representable in JSON (RFC 8259) and become JNull.

instance ToJson[Option[a]] with ToJson[a]Source
instance ToJson[Vector[a]] with ToJson[a]Source
instance ToJson[List[a]] with ToJson[a]Source
instance ToJson[Set[a]] with ToJson[a]Source

Set elements are emitted in sorted order (by Order[a]), giving canonical, diff-friendly output.

instance ToJson[Map[k, v]] with ToString[k], ToJson[v]Source

Object keys are encoded by ToString.toString of the Map's key type.

instance ToJson[(a1, a2)] with ToJson[a1], ToJson[a2]Source
instance ToJson[(a1, a2, a3)] with ToJson[a1], ToJson[a2], ToJson[a3]Source
instance ToJson[(a1, a2, a3, a4)] with ToJson[a1], ToJson[a2], ToJson[a3], ToJson[a4]Source
instance ToJson[(a1, a2, a3, a4, a5)] with ToJson[a1], ToJson[a2], ToJson[a3], ToJson[a4], ToJson[a5]Source
instance ToJson[(a1, a2, a3, a4, a5, a6)] with ToJson[a1], ToJson[a2], ToJson[a3], ToJson[a4], ToJson[a5], ToJson[a6]Source
instance ToJson[(a1, a2, a3, a4, a5, a6, a7)] with ToJson[a1], ToJson[a2], ToJson[a3], ToJson[a4], ToJson[a5], ToJson[a6], ToJson[a7]Source
instance ToJson[(a1, a2, a3, a4, a5, a6, a7, a8)] with ToJson[a1], ToJson[a2], ToJson[a3], ToJson[a4], ToJson[a5], ToJson[a6], ToJson[a7], ToJson[a8]Source
instance ToJson[(a1, a2, a3, a4, a5, a6, a7, a8, a9)] with ToJson[a1], ToJson[a2], ToJson[a3], ToJson[a4], ToJson[a5], ToJson[a6], ToJson[a7], ToJson[a8], ToJson[a9]Source
instance ToJson[(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10)] with ToJson[a1], ToJson[a2], ToJson[a3], ToJson[a4], ToJson[a5], ToJson[a6], ToJson[a7], ToJson[a8], ToJson[a9], ToJson[a10]Source

Signatures

def toJson(x: a): Json with ToJson[a] Source