Object/Class

org.typelevel.claimant

Claim

Related Docs: class Claim | package claimant

Permalink

object Claim

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

Type Members

  1. case class And(lhs: Claim, rhs: Claim) extends Claim with Product with Serializable

    Permalink
  2. case class Not(c: Claim) extends Claim with Product with Serializable

    Permalink
  3. case class Or(lhs: Claim, rhs: Claim) extends Claim with Product with Serializable

    Permalink
  4. case class Simple(b: Boolean, msg: String) extends Claim with Product with Serializable

    Permalink

    ADT members follow.

    ADT members follow. Other than Simple, these are all recursively-defined.

  5. case class Xor(lhs: Claim, rhs: Claim) extends Claim with Product with Serializable

    Permalink

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. def apply(res: Boolean, msg: String): Claim

    Permalink

    Factory constructor to build a claim.

    Factory constructor to build a claim.

    Unlike its one-argument cousin (the macro), this method does _not_ do any fancy analysis. It simply pairs a Boolean value with a String describing that expression.

    Claims returns by this method are always Simple claims.

  5. macro def apply(cond: Boolean): Prop

    Permalink

    Transform a Boolean expression into a labeled Prop.

    Transform a Boolean expression into a labeled Prop.

    The contents of the expression will be analyzed, to provide more informative messages if the expression fails.

    Currently this macro may evaluate sub-expressions multiple times. This means that this macro is NOT SAFE to use with impure code, since it may change evaluation order or cause multiple evaluations.

    While claimant.Claim(...) is not directly configurable in any meaningful sense, it's relatively easy to define a new claimant.System and implement your own macro.

    This method is Claimant's raison d'etre.

  6. final def asInstanceOf[T0]: T0

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. def decompose(c: Context)(cond: scala.reflect.macros.blackbox.Context.Expr[Boolean]): scala.reflect.macros.blackbox.Context.Expr[Prop]

    Permalink

    This method is called by the apply macro.

    This method is called by the apply macro.

    In turn, it calls sys.deconstruct, and then converts the result of that (a Claim) into a Prop.

  9. final def eq(arg0: AnyRef): Boolean

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

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

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

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

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

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

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

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

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

    Permalink
    Definition Classes
    AnyRef
  19. val sys: System

    Permalink

    This System describes how we label expressions.

  20. def toString(): String

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

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

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

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

Inherited from AnyRef

Inherited from Any

Ungrouped