Fully automatic, recursive formatter generator.
Fully automatic, recursive formatter generator. Recognizes overridden formatters from companion objects or implicit scope Does currently only for for case classes, sealed traits, objects and manually defined formatters. Automatically, recursively delegates to formatCaseClass, formatSealed, formatInline, formatSingleton, implicitly[Format[...]] Note: defaults to inline single-value case classes. Override if required. Currently not supported: classes with type arguments including tuples
Generates a PlayJson Format[T] for a case class T with any number of fields (>22 included)
Generates a PlayJson Format[T] for a case class T with any number of fields (>22 included) Uses default values when fields are not found
Serialize one member classes such as value classes as their single contained value instead of a wrapping js object.
Generates a PlayJson Format[T] for a sealed trait that dispatches to Writes of it's concrete subclasses.
Generates a PlayJson Format[T] for a sealed trait that dispatches to Writes of it's concrete subclasses. CAREFUL: It uses orElse for Reads in an unspecified order, which can produce wrong results in case of ambiguities.
Generates a PlayJson Format[T] for a sealed trait that dispatches to Writes of it's concrete subclasses.
Generates a PlayJson Format[T] for a sealed trait that dispatches to Writes of it's concrete subclasses. Uses provided type Fallback as the last resort. Fallback needs to be a subtype of T and ideally: case class Fallback(json: JsValue) extend T and using formatInline[Fallback] as the serializer CAREFUL: It uses orElse for Reads in an unspecified order, which can produce wrong results in case of ambiguities.
serializes a singleton object of given type with the given encoder
Generates a PlayJson OFormat[T] for a sealed trait that dispatches to Writes of it's concrete subclasses.
Generates a PlayJson OFormat[T] for a sealed trait that dispatches to Writes of it's concrete subclasses. CAREFUL: It uses orElse for Reads in an unspecified order, which can produce wrong results in case of ambiguities.
Generates a PlayJson OFormat[T] for a sealed trait that dispatches to Writes of it's concrete subclasses.
Generates a PlayJson OFormat[T] for a sealed trait that dispatches to Writes of it's concrete subclasses. Uses provided type Fallback as the last resort. Fallback needs to be a subtype of T and ideally: case class Fallback(json: JsValue) extend T and using formatInline[Fallback] as the serializer CAREFUL: It uses orElse for Reads in an unspecified order, which can produce wrong results in case of ambiguities.