trait OFormat[A] extends OWrites[A] with Reads[A] with Format[A]

Source
Format.scala
Linear Supertypes
Format[A], Reads[A], OWrites[A], Writes[A], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. OFormat
  2. Format
  3. Reads
  4. OWrites
  5. Writes
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Abstract Value Members

  1. abstract def reads(json: JsValue): JsResult[A]

    Convert the JsValue into a A

    Convert the JsValue into a A

    Definition Classes
    Reads
  2. abstract def writes(o: A): JsObject

    Converts the A value into a JsValue.

    Converts the A value into a JsValue.

    Definition Classes
    Writes

Concrete Value Members

  1. def andThen[B](rb: Reads[B])(implicit witness: <:<[A, JsValue]): Reads[B]
    Definition Classes
    Reads
  2. final def bimap[B](readsMap: (A) => B, writesContramap: (B) => A): OFormat[B]

    Maps reads and writes operations between the types A and B, using the given functions.

    Maps reads and writes operations between the types A and B, using the given functions.

    readsMap

    the function applied to the read A value

    Definition Classes
    Format
  3. def collect[B](error: JsonValidationError)(f: PartialFunction[A, B]): Reads[B]
    Definition Classes
    Reads
  4. def composeWith[B <: JsValue](rb: Reads[B]): Reads[A]

    Creates a new Reads, which first passes the input JSON to rb, and then it executes this Reads on the pre-processed JSON (if rb has successfully handled the input JSON).

    Creates a new Reads, which first passes the input JSON to rb, and then it executes this Reads on the pre-processed JSON (if rb has successfully handled the input JSON).

    Definition Classes
    Reads
  5. def contramap[B](f: (B) => A): OWrites[B]

    Returns a new instance that first converts a B value to a A one, before converting this A value into a JsValue.

    Returns a new instance that first converts a B value to a A one, before converting this A value into a JsValue.

    Definition Classes
    Writes
  6. def filter(error: JsonValidationError)(f: (A) => Boolean): Reads[A]
    Definition Classes
    Reads
  7. def filter(f: (A) => Boolean): Reads[A]
    Definition Classes
    Reads
  8. def filterNot(error: JsonValidationError)(f: (A) => Boolean): Reads[A]
    Definition Classes
    Reads
  9. def filterNot(f: (A) => Boolean): Reads[A]
    Definition Classes
    Reads
  10. def flatMap[B](f: (A) => Reads[B]): Reads[B]
    Definition Classes
    Reads
  11. def flatMapResult[B](f: (A) => JsResult[B]): Reads[B]

    Creates a new Reads, which transforms the successful result from the current instance using the given function.

    Creates a new Reads, which transforms the successful result from the current instance using the given function.

    f

    the function applied on the successful A value

    final class Foo private(val code: String) extends AnyVal
    
    val A = new Foo("A")
    val B = new Foo("B")
    
    import play.api.libs.json.Reads
    
    val r: Reads[Foo] = implicitly[Reads[String]].flatMapResult {
      case "A" => JsSuccess(A)
      case "B" => JsSuccess(B)
      case _   => JsError("error.expected.foo")
    }
    Definition Classes
    Reads
  12. def map[B](f: (A) => B): Reads[B]

    Create a new Reads which maps the value produced by this Reads.

    Create a new Reads which maps the value produced by this Reads.

    B

    The type of the value produced by the new Reads.

    f

    the function applied on the result of the current instance, if successful

    Definition Classes
    Reads
  13. def narrow[B <: A]: OWrites[B]

    Narrows to any B super-type of A.

    Narrows to any B super-type of A.

    Definition Classes
    Writes
  14. def orElse(v: Reads[A]): Reads[A]

    Creates a new Reads, based on this one, which first executes this Reads' logic then, if this Reads resulted in a JsError, runs the second Reads on the JsValue.

    Creates a new Reads, based on this one, which first executes this Reads' logic then, if this Reads resulted in a JsError, runs the second Reads on the JsValue.

    v

    the Reads to run if this one gets a JsError

    returns

    A new Reads with the updated behavior.

    Definition Classes
    Reads
  15. def preprocess(f: PartialFunction[, JsValue]): Reads[A]

    Creates a new Reads, which first transforms the input JSON using the given tranformer, and then it executes this Reads on the pre-processed JSON.

    Creates a new Reads, which first transforms the input JSON using the given tranformer, and then it executes this Reads on the pre-processed JSON.

    Definition Classes
    Reads
  16. def transform(transformer: [JsObject]): OWrites[A]

    Transforms the resulting JsValue using a Writes[JsValue].

    Transforms the resulting JsValue using a Writes[JsValue].

    Definition Classes
    OWrites
  17. def transform(transformer: () => JsObject): OWrites[A]

    Transforms the resulting JsObject using a transformer function.

    Transforms the resulting JsObject using a transformer function.

    Definition Classes
    OWrites
  18. def transform(transformer: [JsValue]): Writes[A]

    Transforms the resulting JsValue using a Writes[JsValue].

    Transforms the resulting JsValue using a Writes[JsValue].

    Definition Classes
    Writes
  19. def transform(transformer: () => JsValue): Writes[A]

    Transforms the resulting JsValue using transformer function.

    Transforms the resulting JsValue using transformer function.

    Definition Classes
    Writes
  20. def widen[B >: A]: Reads[B]

    Widen this Reads.

    Widen this Reads.

    import play.api.libs.json.Reads
    
    sealed trait Animal
    case class Dog(name: String) extends Animal
    case class Cat(name: String) extends Animal
    
    def simple(r: Reads[Dog]): Reads[Animal] = r.widen[Animal]
    Definition Classes
    Reads

Deprecated Value Members

  1. def compose[B <: JsValue](rb: Reads[B]): Reads[A]
    Definition Classes
    Reads
    Annotations
    @deprecated
    Deprecated

    (Since version 2.7.0) Use composeWith