BooleanReads

object BooleanReads extends Reads[Boolean]

Deserializer for Boolean types.

trait Reads[Boolean]
class Object
trait Matchable
class Any

Value members

Concrete methods

def reads(json: JsValue): JsResult[Boolean]

Inherited methods

def andThen[B](rb: Reads[B])(implicit witness: Boolean <:< JsValue): Reads[B]
Inherited from:
Reads
def collect[B](error: JsonValidationError)(f: PartialFunction[Boolean, B]): Reads[B]
Inherited from:
Reads
def composeWith[B <: JsValue](rb: Reads[B]): Reads[Boolean]

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).

Inherited from:
Reads
def filter(error: JsonValidationError)(f: Boolean => Boolean): Reads[Boolean]
Inherited from:
Reads
def filter(f: Boolean => Boolean): Reads[Boolean]
Inherited from:
Reads
def filterNot(error: JsonValidationError)(f: Boolean => Boolean): Reads[Boolean]
Inherited from:
Reads
def filterNot(f: Boolean => Boolean): Reads[Boolean]
Inherited from:
Reads
def flatMap[B](f: Boolean => Reads[B]): Reads[B]
Inherited from:
Reads
def flatMapResult[B](f: Boolean => 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.

Value parameters:
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")
}
Inherited from:
Reads
def map[B](f: Boolean => 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.

Type parameters:
B

The type of the value produced by the new Reads.

Value parameters:
f

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

Inherited from:
Reads
def orElse(v: Reads[Boolean]): Reads[Boolean]

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.

Value parameters:
v

the Reads to run if this one gets a JsError

Returns:

A new Reads with the updated behavior.

Inherited from:
Reads
def preprocess(f: PartialFunction[JsValue, JsValue]): Reads[Boolean]

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.

Value parameters:
transformer

the function to pre-process the input JSON

Inherited from:
Reads
def widen[B >: Boolean]: 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]
Inherited from:
Reads

Deprecated and Inherited methods

@deprecated("Use [[composeWith]]", "2.7.0")
def compose[B <: JsValue](rb: Reads[B]): Reads[Boolean]
Deprecated
Inherited from:
Reads