Object/Trait

typequux

Bool

Related Docs: trait Bool | package typequux

Permalink

object Bool

Contains implementation for Bool and typeconstructor aliases that make usage more pleasant

The operations can be shown to satisfy:

1. Associativity of Or: ||[A, B || C] =:= ||[A || B, C]

2. Associativity of And: &&[A, B && C] =:= &&[A && B, C]

3. Commutativity of Or: ||[A, B] =:= ||[B, A]

4. Commutativity of And: &&[A, B] =:= &&[B, A]

5. Distributivity of Or over And: ||[A, B && C] =:= &&[A || B, A || C]

6. Distributivity of And over Or: &&[A, B || C] =:= ||[A && B, A && C]

7. Identity for Or: ||[A, False] =:= A

8. Identity for And: &&[A, True] =:= A

9. Annhilator for Or: ||[A, True] =:= True

10. Annhilator for And: &&[A, False] =:= False

11. Idempotence of Or: ||[A, A] =:= A

12. Idempotence of And: &&[A, A] =:= A

13. Absorption 1: &&[A, A || B] =:= A

14. Absorbtion 2: ||[A, A && B] =:= A

15. Complementation 1: &&[A, Not[A]] =:= False

16. Complementation 2: ||[A, Not[A]] =:= True

17. Double Negation: Not[Not[A]] =:= A

18. De Morgan 1: &&[Not[A], Not[B]] =:= Not[A || B]

19. De Morgan 2: ||[Not[A], Not[B]] =:= Not[A && B]

Author:

Harshad Deo

Since

0.1

Linear Supertypes
Ordering
  1. Grouped
  2. Alphabetic
  3. By Inheritance
Inherited
  1. Bool
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type &&[A <: Bool, B <: Bool] = Bool.&&.A.If[B, False, Bool]

    Permalink

    Type constructor for logical conjunction

    Type constructor for logical conjunction

    A && B =:= True if A =:= True and B =:= True

    A && B =:= False otherwise

    Author:

    Harshad Deo

    Since

    0.1

  2. type ->>[A <: Bool, B <: Bool] = Bool.->>.A.If[B, True, Bool]

    Permalink

    Typeconstructor for material implication

    Typeconstructor for material implication

    If A =:= True, A ->> B =:= B

    If A =:= False, the value of B is ignored and the constructor returns True

    Author:

    Harshad Deo

    Since

    0.1

  3. final class BoolRep[B <: Bool] extends AnyVal

    Permalink

    Provides a value for a type level boolean

    Provides a value for a type level boolean

    Author:

    Harshad Deo

    Since

    0.1

  4. type Eqv[A <: Bool, B <: Bool] = Bool.Eqv.A.If[B, Not[B], Bool]

    Permalink

    Type constructor for logical equivalence

    Type constructor for logical equivalence

    A Eqv B =:= True if A =:= B

    A Eqv B =:= False otherwise

    Author:

    Harshad Deo

    Since

    0.1

  5. final class False extends Bool

    Permalink

    Typelevel representation of a predicate being False

    Typelevel representation of a predicate being False

    Author:

    Harshad Deo

    Since

    0.1

  6. type Not[A <: Bool] = Bool.Not.A.If[False, True, Bool]

    Permalink

    Type constructor for logical negation

    Type constructor for logical negation

    Not[True] =:= False

    Not[False] =:= True

    Author:

    Harshad Deo

    Since

    0.1

  7. final class True extends Bool

    Permalink

    Typelevel representation of a predicate being true

    Typelevel representation of a predicate being true

    Author:

    Harshad Deo

    Since

    0.1

  8. type Xor[A <: Bool, B <: Bool] = Bool.Xor.A.If[Not[B], B, Bool]

    Permalink

    Type constructor for logical exclusive or

    Type constructor for logical exclusive or

    A Xor B =:= True if exactly one of A =:= True or B =:= True

    A Xor B =:= False otherwise

    Author:

    Harshad Deo

    Since

    0.1

  9. type ||[A <: Bool, B <: Bool] = Bool.||.A.If[True, B, Bool]

    Permalink

    Type constructor for logical disjunction

    Type constructor for logical disjunction

    A || B =:= False if A =:= False and B =:= False

    A || B =:= True otherwise

    Author:

    Harshad Deo

    Since

    0.1

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. object BoolRep

    Permalink

    Provides implicits for converting typelevel booleans to value level booleans

    Provides implicits for converting typelevel booleans to value level booleans

    Author:

    Harshad Deo

    Since

    0.1

  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  9. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  11. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  12. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  13. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  14. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  15. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  16. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  17. def toBoolean[B <: Bool](implicit ev: BoolRep[B]): Boolean

    Permalink

    Method to convert a typelevel boolean to its value representation

    Method to convert a typelevel boolean to its value representation

    Author:

    Harshad Deo

    B

    Type of the boolean to be converted to a value

    Since

    0.1

  18. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  19. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  21. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Implementations

Operations

Ungrouped