SerializableCompanion

fm.serializer.SerializableCompanion

Usage Pattern:

import fm.serializer.{SerializableCompanion, SerializableInstance, SimpleSerializer}

object Foo extends SerializableCompanion[Foo] { protected val serializer: SimpleSerializer[Foo] = makeSerializer[Foo] }

final case class Foo(bar: String) extends SerializableInstance[Foo] { protected def companion: SerializableCompanion[Foo] = Foo }

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Value members

Concrete methods

def addToBsonDocument(v: A, doc: BsonDocument): Unit
def fromBsonBytes(bytes: Array[Byte]): A
def fromBsonDocument(doc: BsonDocument): A
def fromBytes(bytes: Array[Byte]): A
def fromJSON(json: String): A
def fromJsonNode(node: JsonNode): A
def fromJsonObject(node: JsonObject): A
def toBsonBytes(v: A): Array[Byte]
def toBsonDocument(v: A): BsonDocument
def toBytes(v: A): Array[Byte]
def toJSON(v: A): String
def toJSONWithoutNulls(v: A): String
def toJsonNode(v: A): JsonNode
def toJsonNodeWithoutNulls(v: A): JsonNode
def toJsonObject(v: A): JsonObject
def toJsonObjectWithoutNulls(v: A): JsonObject
def toMinimalJSON(v: A): String
def toPrettyJSON(v: A): String
def toPrettyJSONWithoutNulls(v: A): String
def toRawBsonDocument(v: A): RawBsonDocument
def validateJson(json: String): ValidationResult
def validateJsonNode(node: JsonNode): ValidationResult
def validateJsonObject(node: JsonObject): ValidationResult

Inherited methods

inline protected def makeSerializer[T](): SimpleObjectSerializer[T]

Attributes

Inherited from:
SerializableCompanionBase

Abstract fields

protected val serializer: SimpleSerializer[A]