BoolAlgebra

sealed abstract class BoolAlgebra[+A] extends Product with Serializable

A BoolAlgebra[A] is a description of logical operations on values of type A.

Companion:
object
trait Product
trait Equals
class Object
trait Matchable
class Any
class And[A]
class Not[A]
class Or[A]
class Value[A]

Value members

Concrete methods

final def &&[A1 >: A](that: BoolAlgebra[A1]): BoolAlgebra[A1]

Returns a new result that is the logical conjunction of this result and the specified result.

Returns a new result that is the logical conjunction of this result and the specified result.

final def <==>[A1 >: A](that: BoolAlgebra[A1]): BoolAlgebra[A1]

Returns a new result that is the logical double implication of this result and the specified result.

Returns a new result that is the logical double implication of this result and the specified result.

final def ==>[A1 >: A](that: BoolAlgebra[A1]): BoolAlgebra[A1]

Returns a new result that is the logical implication of this result and the specified result.

Returns a new result that is the logical implication of this result and the specified result.

final def as[B](b: B): BoolAlgebra[B]

Returns a new result, with all values mapped to the specified constant.

Returns a new result, with all values mapped to the specified constant.

final def both[A1 >: A](that: BoolAlgebra[A1]): BoolAlgebra[A1]

A named alias for &&.

A named alias for &&.

final def either[A1 >: A](that: BoolAlgebra[A1]): BoolAlgebra[A1]

A named alias for ||.

A named alias for ||.

final def failures: Option[BoolAlgebra[A]]

If this result is a success returns None. If it is a failure returns a new result containing all failures that are relevant to this result being a failure.

If this result is a success returns None. If it is a failure returns a new result containing all failures that are relevant to this result being a failure.

final def flatMap[B](f: A => BoolAlgebra[B]): BoolAlgebra[B]

Returns a new result, with all values mapped to new results using the specified function.

Returns a new result, with all values mapped to new results using the specified function.

final def flatMapM[R, E, B](f: A => ZIO[R, E, BoolAlgebra[B]]): ZIO[R, E, BoolAlgebra[B]]

Returns a new result, with all values mapped to new results using the specified effectual function.

Returns a new result, with all values mapped to new results using the specified effectual function.

final def fold[B](caseValue: A => B)(caseAnd: (B, B) => B, caseOr: (B, B) => B, caseNot: B => B): B

Folds over the result bottom up, first converting values to B values, and then combining the B values, using the specified functions.

Folds over the result bottom up, first converting values to B values, and then combining the B values, using the specified functions.

final override def hashCode: Int
Definition Classes
Any
final def iff[A1 >: A](that: BoolAlgebra[A1]): BoolAlgebra[A1]

A named alias for "<==>".

A named alias for "<==>".

final def implies[A1 >: A](that: BoolAlgebra[A1]): BoolAlgebra[A1]

A named alias for "==>".

A named alias for "==>".

final def isFailure: Boolean

Determines whether the result is a failure, where values represent success and are combined using logical conjunction, disjunction, and negation.

Determines whether the result is a failure, where values represent success and are combined using logical conjunction, disjunction, and negation.

final def isSuccess: Boolean

Determines whether the result is a success, where values represent success and are combined using logical conjunction, disjunction, and negation.

Determines whether the result is a success, where values represent success and are combined using logical conjunction, disjunction, and negation.

final def map[B](f: A => B): BoolAlgebra[B]

Returns a new result, with all values mapped by the specified function.

Returns a new result, with all values mapped by the specified function.

final def mapM[R, E, B](f: A => ZIO[R, E, B]): ZIO[R, E, BoolAlgebra[B]]

Returns a new result, with all values mapped by the specified effectual function.

Returns a new result, with all values mapped by the specified effectual function.

final def negate: BoolAlgebra[A]

Negates this result, converting all successes into failures and failures into successes.

Negates this result, converting all successes into failures and failures into successes.

final def unary_!: BoolAlgebra[A]

Returns a new result that is the logical negation of this result.

Returns a new result that is the logical negation of this result.

final def ||[A1 >: A](that: BoolAlgebra[A1]): BoolAlgebra[A1]

Returns a new result that is the logical disjunction of this result and the specified result.

Returns a new result that is the logical disjunction of this result and the specified result.

Inherited methods

def canEqual(that: Any): Boolean
Inherited from:
Equals
Inherited from:
Product
def productElement(n: Int): Any
Inherited from:
Product
Inherited from:
Product
Inherited from:
Product
Inherited from:
Product