Object/Trait

laserdisc.protocol

AtLeastN

Related Docs: trait AtLeastN | package protocol

Permalink

object AtLeastN extends Serializable

Source
constraints.scala
Linear Supertypes
Serializable, Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AtLeastN
  2. Serializable
  3. Serializable
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

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. final def asInstanceOf[T0]: T0

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. implicit final def derive[L <: HList, N <: Nat, N0 <: Nat, LS <: Coproduct, UL, A](implicit ev0: Aux[L, N0], ev1: >=[N0, N], length: ToInt[N0], ev2: Aux[L, LS], ev3: Aux[LS, UL], ev4: <:<[UL, A]): AtLeastN[L, N, A]

    Permalink

    Implicit derivation of an AtLeastN for any HList.

    Implicit derivation of an AtLeastN for any HList.

    Derivation will succeed iff:

    • the HList L contains only types which are subtypes of the given type A, and
    • if the length of the HList is equal or greater than the provided Nat N (at the type-level).

    These rules are enforced through implicit evidences.

    L

    The original HList for which we require an instance of AtLeastN

    N

    The desired minimum length of L

    N0

    The computed effective length of L

    LS

    The computed Coproduct of all types present in L

    UL

    The LUB of the Coproduct LS

    A

    The required type that all types in L must be strict subtypes of

    ev0

    Is the evidence of L's length N0

    ev1

    Is the evidence that N0 is greater or equal than N

    length

    Is the evidence that going from type-level's Nat's N0 to value-level Int is possible

    ev2

    Is the evidence of the Coproduct LS of all types found in L

    ev3

    Is the evidence of the LUB UL of Coproduct's LS

    ev4

    Is the evidence that the computed LUB UL is a strict subtype of A, which, by definition of Coproduct and Lub (implicitly used by Unifier), implies the desired constraint, i.e. that all types in L are strict subtypes of A

    returns

    An implicitly derived instance of AtLeastN for L, N and A

  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 toString(): String

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

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

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

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

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped