Shardcake integration
The shardcake makes it possible to use desert as a Shardcake serializer.
To use it add the dependency:
libraryDependencies += "io.github.vigoo" %% "desert-shardcake" % "0.3.0"
Usage
Create a type registry with the types you want to serialize and then use DesertSerialization
as a shardcake serializer layer:
import io.github.vigoo.desert._
import io.github.vigoo.desert.shapeless._
import io.github.vigoo.desert.shardcakesupport._
import com.devsisters.shardcake.interfaces.Serialization
import zio._
case class Test(a: Int, b: String)
object Test {
implicit val codec: BinaryCodec[Test] = DerivedBinaryCodec.derive
}
val serializerLayer: ULayer[Serialization] =
DesertSerialization.withTypeRegistry(
DefaultTypeRegistry()
.register[Test]
.freeze()
)
// serializerLayer: ULayer[Serialization] = Suspend(
// self = zio.ZLayer$$$Lambda$13941/0x0000000103c54440@2c26671e
// )