TestLensAnyOps
class AnyVal
trait Matchable
class Any
Value members
Concrete methods
Always returns true as long the chain of preceding transformations has succeeded.
Always returns true as long the chain of preceding transformations has succeeded.
val option: Either[Int, Option[String]] = Right(Some("Cool"))
assertTrue(option.is(_.right.some.anything)) // returns true
assertTrue(option.is(_.left.anything)) // will fail because of `.left`.
Transforms a value of some type into the given Subtype
if possible,
otherwise fails.
Transforms a value of some type into the given Subtype
if possible,
otherwise fails.
sealed trait CustomError
case class Explosion(blastRadius: Int) extends CustomError
case class Melting(degrees: Double) extends CustomError
case class Fulminating(wow: Boolean) extends CustomError
val error: CustomError = Melting(100)
assertTrue(option.is(_.subtype[Melting]).degrees > 10) // succeeds
assertTrue(option.is(_.subtype[Explosion]).blastRadius == 12) // fails