p

typequux

package typequux

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Package Members

  1. package constraint

Type Members

  1. final class AllContained[HL1, HL2] extends AnyRef

    Marker that all types of HL1 are contained in HL2

    Marker that all types of HL1 are contained in HL2

    Author:

    Harshad Deo

    Since

    0.2.2

  2. class ArityIndexOps[Z] extends AnyRef

    Provides scala collection like operations on sequantially indexed arbitrary arity types, like HList and tuple

    Provides scala collection like operations on sequantially indexed arbitrary arity types, like HList and tuple

    Author:

    Harshad Deo

    Z

    Type on which the operations are defined

    Since

    0.1

  3. class ArityZipOps[Z, F] extends AnyRef

    Provided arbitrary arity zips for sequentially indexed arbitrary arity types, like HList or Tuples

    Provided arbitrary arity zips for sequentially indexed arbitrary arity types, like HList or Tuples

    Author:

    Harshad Deo

    Z

    Type on which operations are defined

    F

    Down-converted type of Z. For more, see constraint.DownTransformConstraint

    Since

    0.1

  4. sealed trait Bool extends AnyRef

    Church encodings of booleans.

    Church encodings of booleans.

    Can be understood as an alias for a type constructor that chooses between one of two alternative types. Is primarily used to enforce the invariants of more complex type-level operations

    Author:

    Harshad Deo

    Since

    0.1

  5. sealed trait Comparison extends AnyRef

    Typelevel encoding of the result of a comparison

    Typelevel encoding of the result of a comparison

    Author:

    Harshad Deo

    Since

    0.1

  6. final class Contained[A, HL] extends AnyRef

    Marker that type A is one of the types of the supplied HList type

    Marker that type A is one of the types of the supplied HList type

    Author:

    Harshad Deo

    A

    Type under consideration

    HL

    HList of types to check against

    Since

    0.1

  7. sealed trait Dense extends AnyRef

    Typelevel representation of dense numbers, stored as a list of Dense.Digit

    Typelevel representation of dense numbers, stored as a list of Dense.Digit

    Author:

    Harshad Deo

    Since

    0.1

  8. sealed trait DenseDiff[M, S, D] extends AnyRef

    Marker trait for typelevel subtraction of Dense numbers.

    Marker trait for typelevel subtraction of Dense numbers.

    Takes linear time (compared to log time for addition), therefore its usage should be limited

    Author:

    Harshad Deo

    M

    Minuend

    S

    Subtrahend

    D

    Difference

    Since

    0.1

  9. sealed trait DenseMap extends AnyRef

    Typelevel map in which the keys are Dense numbers.

    Typelevel map in which the keys are Dense numbers. Implemented a binary tree.

    Author:

    Harshad Deo

    Since

    0.1

  10. sealed trait DenseSet extends AnyRef

    Typelevel set of Dense numbers, implemented as a binary tree

    Typelevel set of Dense numbers, implemented as a binary tree

    Author:

    Harshad Deo

    Since

    0.1

  11. trait Fold[-Elem, Value] extends AnyRef

    Typeclass for typelevel and valuelevel fold

    Typeclass for typelevel and valuelevel fold

    Author:

    Harshad Deo

    Since

    0.1

  12. trait Fold2[-Elem1, -Elem2, Value] extends AnyRef

    Typeclass for typelevel and valuelevel fold for a tuple arg

    Typeclass for typelevel and valuelevel fold for a tuple arg

    Author:

    Harshad Deo

    Since

    0.6.0

  13. sealed trait HList extends AnyRef

    Sequentially indexed arbitrary arity type in which each element can be of a different type

    Sequentially indexed arbitrary arity type in which each element can be of a different type

    Author:

    Harshad Deo

    Since

    0.1

  14. sealed trait HList2TupleConverter[T, HL] extends AnyRef

    Conversions from HList to Tuple

    Conversions from HList to Tuple

    Author:

    Harshad Deo

    T

    Type of the resultant Tuple

    HL

    Type of the input HList

    Since

    0.1

  15. class HListOps[B <: HList] extends ArityIndexOps[B]

    Common operations on HList

    Common operations on HList

    Author:

    Harshad Deo

    B

    Type of the HList on which the operations are defined

    Since

    0.1

  16. trait LiteralHash[X] extends AnyRef

    Typelevel representation of a compile time constant literal.

    Typelevel representation of a compile time constant literal.

    The type hash encoded the type of the literal and the value encoded the value of the literal therefore, even if say, a char and string have the same value hash, they will have different literal hashes.

    Author:

    Harshad Deo

    X

    Type of the literal that has been hashed

    Since

    0.1

  17. trait LowPriorityHList2TupleConverter extends AnyRef

    Provided implicit definition to convert HList to Tuple1.

    Provided implicit definition to convert HList to Tuple1. Kept in a trait that is subtyped to avoid ambiguity with more specific converters

    Author:

    Harshad Deo

    Since

    0.1

  18. sealed trait Nat extends AnyRef

    Peano encoding of natural numbers

    Peano encoding of natural numbers

    Author:

    Harshad Deo

    Since

    0.1

  19. trait NatDiff[M <: Nat, S <: Nat, D <: Nat] extends AnyRef

    Marker trait for typelevel subtraction of Nat

    Marker trait for typelevel subtraction of Nat

    Author:

    Harshad Deo

    M

    Minuend

    S

    Subtrahend

    D

    Difference

    Since

    0.1

  20. final class NotContained[A, HL] extends AnyRef

    Marker that type A is not one of the types of the supplied HList type

    Marker that type A is not one of the types of the supplied HList type

    Author:

    Harshad Deo

    A

    Type under consideration

    HL

    HList of types to check against

    Since

    0.1

  21. final class NotSubType[A, HL] extends AnyRef

    Marker that type A is not a subtype of the types of the supplied HList type

    Marker that type A is not a subtype of the types of the supplied HList type

    Author:

    Harshad Deo

    A

    Type under consideration

    HL

    HList of types to check against

    Since

    0.1

  22. sealed trait Record extends AnyRef

    String indexed collection in which the elements can have different types.

    String indexed collection in which the elements can have different types. Uses HList and DenseMap as backing datastructures

    Author:

    Harshad Deo

    Since

    0.1

  23. class SiOps[S] extends AnyRef

    Provides scala collection like operations on string indexed collections like Record and StringIndexedCollection

    Provides scala collection like operations on string indexed collections like Record and StringIndexedCollection

    Author:

    Harshad Deo

    S

    Type on which the operations are defined

    Since

    0.1

  24. final class SizedVector[N <: Dense, +T] extends AnyRef

    Sequantially indexed immutable collection of fixed size in which all elements are of the same type.

    Sequantially indexed immutable collection of fixed size in which all elements are of the same type. Uses scala.collection.immutable.Vector as a backing datastructure.

    Author:

    Harshad Deo

    N

    Size of the collection

    T

    Element type of the collection

    Since

    0.1

  25. sealed trait StringIndexedCollection[+T] extends AnyRef

    String indexed collection in which all the elements are of the same type.

    String indexed collection in which all the elements are of the same type. Uses scala.collection.immutable.Vector and DenseMap as backing datastructures

    Author:

    Harshad Deo

    T

    Type of the collection

    Since

    0.1

  26. final class SubType[A, HL] extends AnyRef

    Marker that type A is a subtype of one of the types of the supplied HList type

    Marker that type A is a subtype of one of the types of the supplied HList type

    Author:

    Harshad Deo

    A

    Type under consideration

    HL

    HList of types to check against

    Since

    0.1

  27. trait Tuple2HListConverter[T, HL] extends AnyRef

    Conversion from Tuple to HList

    Conversion from Tuple to HList

    Author:

    Harshad Deo

    T

    Type of the tuple

    HL

    Type of the resultant HList

    Since

    0.1

  28. class TupleIndexOps[Z] extends ArityIndexOps[Z]

    Provides scala collection-like operations on tuples.

    Provides scala collection-like operations on tuples.

    Author:

    Harshad Deo

    Z

    Type of the tuple for which the operation is defined

    Since

    0.1

  29. trait ~>[-F[_], +G[_]] extends AnyRef

    Proxy for natural transformations between contexts

    Proxy for natural transformations between contexts

    Author:

    Harshad Deo

    F

    Source Context

    G

    Destination Context

    Since

    0.1

Value Members

  1. object AllContained
  2. object Bool

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

    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

  3. object Comparison

    Contains implementation for Comparison

    Contains implementation for Comparison

    Author:

    Harshad Deo

    Since

    0.1

  4. object Contained

    Contains implicit definitions to build a Contained marker.

    Contains implicit definitions to build a Contained marker.

    Author:

    Harshad Deo

    Since

    0.1

  5. object Dense

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

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

    The operations can be shown to satisfy:

    1. Additive commutativity: +[A, B] =:= +[B, A]

    2. Additive associativity: +[A, +[B, C]] =:= +[+[A, B], C]

    3. Additive identity: +[A, _0] =:= A =:= +[_0, A]

    4. Multiplicative commutativity: *[A, B] =:= *[B, A]

    5. Multiplicative associativity: *[A, *[B, C]] =:= *[*[A, B], C]

    6. Multiplicative identity: *[A, _1] =:= A =:= *[_1, A]

    7. Distributivity: *[A, +[B, C]] =:= +[*[A, B], *[A, C]]

    8. Zero exponent: ^[A, _0] =:= _1

    9. One exponent: ^[_1, A] =:= _1

    10. Exponent Identity: ^[A, _1] =:= A

    11. Exponent combination 1: *[^[A, B], ^[A, C]] =:= ^[A, *[B, C]]

    12. Exponent combination 2: ^[^[A, B], C] =:= ^[A, *[B, C]]

    13. Exponent combination 3: ^[*[A, B], C] =:= *[^[A, C], ^[B, C]]

    14. Total Order

    Author:

    Harshad Deo

    Since

    0.1

  6. object DenseDiff

    Contains implicit definitions to build a DenseDiff marker

    Contains implicit definitions to build a DenseDiff marker

    Author:

    Harshad Deo

    Since

    0.1

  7. object DenseMap

    Contains implementation traits for DenseMap and typeconstructor aliases that make usage more pleasant.

    Contains implementation traits for DenseMap and typeconstructor aliases that make usage more pleasant.

    Author:

    Harshad Deo

    Since

    0.1

  8. object DenseSet

    Contains implementation traits for DenseSet and typeconstructor aliases that make usage more pleasant.

    Contains implementation traits for DenseSet and typeconstructor aliases that make usage more pleasant.

    Author:

    Harshad Deo

    Since

    0.1

  9. object HList

    Contains implementations for HList and implicit definitions to build the constraint typeclasses necessary for operations.

    Contains implementations for HList and implicit definitions to build the constraint typeclasses necessary for operations.

    Author:

    Harshad Deo

    Since

    0.1

  10. object HList2TupleConverter extends LowPriorityHList2TupleConverter

    Provides implicit definitions to convert Tuple2-18 to HList.

    Provides implicit definitions to convert Tuple2-18 to HList. Beyond Tuple18, the implicit search takes too long to be practical

    Author:

    Harshad Deo

    Since

    0.1

  11. object LiteralHash

    Contains implicit conversions to convert literals to their corresponding LiteralHash

    Contains implicit conversions to convert literals to their corresponding LiteralHash

    Author:

    Harshad Deo

    Annotations
    @SuppressWarnings()
    Since

    0.1

  12. object Nat

    Contains implementation traits for Nat and typeconstructor aliases that make usage more pleasant.

    Contains implementation traits for Nat and typeconstructor aliases that make usage more pleasant.

    1. Additive commutativity: +[A, B] =:= +[B, A]

    2. Additive associativity: +[A, +[B, C]] =:= +[+[A, B], C]

    3. Additive identity: +[A, _0] =:= A =:= +[_0, A]

    4. Multiplicative commutativity: *[A, B] =:= *[B, A]

    5. Multiplicative associativity: *[A, *[B, C]] =:= *[*[A, B], C]

    6. Multiplicative identity: *[A, _1] =:= A =:= *[_1, A]

    7. Distributivity: *[A, +[B, C]] =:= +[*[A, B], *[A, C]]

    8. Zero exponent: ^[A, _0] =:= _1

    9. One exponent: ^[_1, A] =:= _1

    10. Exponent Identity: ^[A, _1] =:= A

    11. Total Order

    Author:

    Harshad Deo

    Since

    0.1

  13. object NatDiff

    Contains implicit definitions to build a NatDiff marker

    Contains implicit definitions to build a NatDiff marker

    Author:

    Harshad Deo

    Since

    0.1

  14. object NotContained

    Contains implicit definitions to build a NotContained marker.

    Contains implicit definitions to build a NotContained marker.

    Author:

    Harshad Deo

    Since

    0.1

  15. object NotSubType

    Containt implicit definitions to build a NotSubType marker

    Containt implicit definitions to build a NotSubType marker

    Author:

    Harshad Deo

    Since

    0.1

  16. object Record

    Contains implementations of Record and implicit definitions for building typeclasses necessary for the operations on records

    Contains implementations of Record and implicit definitions for building typeclasses necessary for the operations on records

    Author:

    Harshad Deo

    Since

    0.1

  17. object SizedVector

    Implements methods to construct SizedVector objects

    Implements methods to construct SizedVector objects

    Author:

    Harshad Deo

    Since

    0.1

  18. object StringIndexedCollection

    Contains implementations of StringIndexedCollection and implicit definitions for building typeclasses necessary for the operations on string indexed collections

    Contains implementations of StringIndexedCollection and implicit definitions for building typeclasses necessary for the operations on string indexed collections

    Author:

    Harshad Deo

    Since

    0.1

  19. object SubType

    Containt implicit definitions to build a SubType marker

    Containt implicit definitions to build a SubType marker

    Author:

    Harshad Deo

    Since

    0.1

  20. object Tuple2HListConverter

    Provides implicit definitions to convert Tuple2-22 to HList

    Provides implicit definitions to convert Tuple2-22 to HList

    Author:

    Harshad Deo

    Since

    0.1

  21. object TupleOps

    Provides implicit definitions to build constraint typeclasses for tuples.

    Provides implicit definitions to build constraint typeclasses for tuples. To do so, converts the tuple to the corresponding HList, applies the operation on the HList and converts the result back to a tuple.

    Author:

    Harshad Deo

    Since

    0.1

  22. object Typequux
  23. object ~>

    Contains implicit conversions and values that provide several utility methods

    Contains implicit conversions and values that provide several utility methods

    Author:

    Harshad Deo

    Since

    0.1

Ungrouped