package instances

  1. Alphabetic
  1. Public
  2. All

Type Members

  1. trait AllInstances extends BigDecimalInstances with BigIntInstances with BitSetInstances with BooleanInstances with ByteInstances with CharInstances with DoubleInstances with EqInstances with EitherInstances with DurationInstances with FloatInstances with FunctionInstances with HashInstances with IntInstances with ListInstances with LongInstances with MapInstances with OptionInstances with OrderInstances with PartialOrderInstances with QueueInstances with SetInstances with SeqInstances with ShortInstances with StreamInstances with StringInstances with SymbolInstances with TupleInstances with UnitInstances with UUIDInstances with VectorInstances
  2. class BigDecimalGroup extends CommutativeGroup[BigDecimal]

    Note that combining, removing, and inverting BigDecimal values will use unlimited precision operations.

    Note that combining, removing, and inverting BigDecimal values will use unlimited precision operations.

    This matches the behavior of Scala 2.12 and earlier versions, but not Scala 2.13, which means that + and |+| (or sum and combineAll) may not agree if you are working with values with limited-precision MathContexts.

  3. trait BigDecimalInstances extends AnyRef
  4. class BigDecimalOrder extends Order[BigDecimal] with Hash[BigDecimal]
  5. class BigIntGroup extends CommutativeGroup[BigInt]
  6. trait BigIntInstances extends AnyRef
  7. class BigIntOrder extends Order[BigInt] with Hash[BigInt] with BigIntUnboundedEnum
  8. trait BigIntUnboundedEnum extends UnboundedEnumerable[BigInt]
  9. trait BitSetInstances extends AnyRef
  10. class BitSetPartialOrder extends PartialOrder[BitSet] with Hash[BitSet]
  11. class BitSetSemilattice extends BoundedSemilattice[BitSet]
  12. trait BooleanBounded extends LowerBounded[Boolean] with UpperBounded[Boolean]
  13. trait BooleanEnumerable extends BoundedEnumerable[Boolean]
  14. trait BooleanInstances extends AnyRef
  15. class BooleanOrder extends Order[Boolean] with Hash[Boolean] with BooleanBounded with BooleanEnumerable
  16. trait ByteBounded extends LowerBounded[Byte] with UpperBounded[Byte]
  17. trait ByteEnumerable extends BoundedEnumerable[Byte]
  18. class ByteGroup extends CommutativeGroup[Byte]
  19. trait ByteInstances extends AnyRef
  20. class ByteOrder extends Order[Byte] with Hash[Byte] with ByteBounded with ByteEnumerable
  21. trait CharBounded extends LowerBounded[Char] with UpperBounded[Char]
  22. trait CharEnumerable extends BoundedEnumerable[Char]
  23. trait CharInstances extends AnyRef
  24. class CharOrder extends Order[Char] with Hash[Char] with CharBounded with CharEnumerable
  25. trait DeadlineBounded extends LowerBounded[Deadline] with UpperBounded[Deadline]
  26. trait DeadlineInstances extends AnyRef
  27. class DeadlineOrder extends Order[Deadline] with Hash[Deadline] with DeadlineBounded
  28. class DoubleGroup extends CommutativeGroup[Double]
  29. trait DoubleInstances extends AnyRef
  30. class DoubleOrder extends Order[Double] with Hash[Double]
  31. trait DurationBounded extends LowerBounded[Duration] with UpperBounded[Duration]
  32. class DurationGroup extends CommutativeGroup[Duration]

    This group models addition, but has a few problematic edge cases.

    This group models addition, but has a few problematic edge cases.

    1. finite values can overflow, throwing an exception 2. inf + (-inf) = undefined, not zero 3. undefined + zero = undefined
  33. trait DurationInstances extends AnyRef
  34. class DurationOrder extends Order[Duration] with Hash[Duration] with DurationBounded

    This ordering is valid for all defined durations.

    This ordering is valid for all defined durations.

    The value Duration.Undefined breaks our laws, because undefined values are not equal to themselves.

  35. class EitherEq[A, B] extends Eq[Either[A, B]]
  36. class EitherHash[A, B] extends EitherEq[A, B] with Hash[Either[A, B]]
  37. trait EitherInstances extends EitherInstances0
  38. trait EqInstances extends EqToEquivConversion
  39. trait FiniteDurationBounded extends LowerBounded[FiniteDuration] with UpperBounded[FiniteDuration]
  40. class FiniteDurationGroup extends CommutativeGroup[FiniteDuration]
  41. trait FiniteDurationInstances extends AnyRef
  42. class FiniteDurationOrder extends Order[FiniteDuration] with Hash[FiniteDuration] with FiniteDurationBounded
  43. class FloatGroup extends CommutativeGroup[Float]

    This is only approximately associative.

  44. trait FloatInstances extends AnyRef
  45. class FloatOrder extends Order[Float] with Hash[Float]

    Due to the way floating-point equality works, this instance is not lawful under equality, but is correct when taken as an approximation of an exact value.

    Due to the way floating-point equality works, this instance is not lawful under equality, but is correct when taken as an approximation of an exact value.

    If you would prefer an absolutely lawful fractional value, you'll need to investigate rational numbers or more exotic types.

  46. trait Function0Group[A] extends Function0Monoid[A] with Group[() ⇒ A]
  47. trait Function0Monoid[A] extends Function0Semigroup[A] with Monoid[() ⇒ A]
  48. trait Function0Semigroup[A] extends Semigroup[() ⇒ A]
  49. trait Function1Group[A, B] extends Function1Monoid[A, B] with Group[(A) ⇒ B]
  50. trait Function1Monoid[A, B] extends Function1Semigroup[A, B] with Monoid[(A) ⇒ B]
  51. trait Function1Semigroup[A, B] extends Semigroup[(A) ⇒ B]
  52. trait FunctionInstances extends FunctionInstances0
  53. trait HashInstances extends HashToHashingConversion
  54. trait IntBounded extends LowerBounded[Int] with UpperBounded[Int]
  55. trait IntEnumerable extends BoundedEnumerable[Int]
  56. class IntGroup extends CommutativeGroup[Int]
  57. trait IntInstances extends AnyRef
  58. class IntOrder extends Order[Int] with Hash[Int] with IntBounded with IntEnumerable
  59. class ListEq[A] extends Eq[List[A]]
  60. class ListHash[A] extends ListEq[A] with Hash[List[A]]
  61. trait ListInstances extends ListInstances1
  62. class ListMonoid[A] extends Monoid[List[A]]
  63. class ListOrder[A] extends Order[List[A]]
  64. class ListPartialOrder[A] extends PartialOrder[List[A]]
  65. trait LongBounded extends UpperBounded[Long] with LowerBounded[Long]
  66. trait LongEnumerable extends BoundedEnumerable[Long]
  67. class LongGroup extends CommutativeGroup[Long]
  68. trait LongInstances extends AnyRef
  69. class LongOrder extends Order[Long] with Hash[Long] with LongBounded with LongEnumerable
  70. class MapEq[K, V] extends Eq[Map[K, V]]
  71. class MapHash[K, V] extends MapEq[K, V] with Hash[Map[K, V]]
  72. trait MapInstances extends MapInstances1
  73. class MapMonoid[K, V] extends Monoid[Map[K, V]]
  74. class OptionEq[A] extends Eq[Option[A]]
  75. class OptionHash[A] extends OptionEq[A] with Hash[Option[A]]
  76. trait OptionInstances extends OptionInstances0
  77. class OptionMonoid[A] extends Monoid[Option[A]]
  78. class OptionOrder[A] extends Order[Option[A]]
  79. class OptionPartialOrder[A] extends PartialOrder[Option[A]]
  80. trait OrderInstances extends OrderToOrderingConversion
  81. trait PartialOrderInstances extends PartialOrderToPartialOrderingConversion
  82. class QueueEq[A] extends Eq[Queue[A]]
  83. class QueueHash[A] extends QueueEq[A] with Hash[Queue[A]]
  84. trait QueueInstances extends QueueInstances1
  85. class QueueMonoid[A] extends Monoid[Queue[A]]
  86. class QueueOrder[A] extends Order[Queue[A]]
  87. class QueuePartialOrder[A] extends PartialOrder[Queue[A]]
  88. class SeqEq[A] extends Eq[Seq[A]]
  89. class SeqHash[A] extends SeqEq[A] with Hash[Seq[A]]
  90. trait SeqInstances extends SeqInstances1
  91. class SeqMonoid[A] extends Monoid[Seq[A]]
  92. class SeqOrder[A] extends Order[Seq[A]]
  93. class SeqPartialOrder[A] extends PartialOrder[Seq[A]]
  94. class SetHash[A] extends Hash[Set[A]]
  95. trait SetInstances extends SetInstances1
  96. class SetPartialOrder[A] extends PartialOrder[Set[A]]
  97. class SetSemilattice[A] extends BoundedSemilattice[Set[A]]
  98. trait ShortBounded extends LowerBounded[Short] with UpperBounded[Short]
  99. trait ShortEnumerable extends BoundedEnumerable[Short]
  100. class ShortGroup extends CommutativeGroup[Short]
  101. trait ShortInstances extends AnyRef
  102. class ShortOrder extends Order[Short] with Hash[Short] with ShortBounded with ShortEnumerable
  103. class SortedMapCommutativeMonoid[K, V] extends SortedMapMonoid[K, V] with CommutativeMonoid[SortedMap[K, V]]
  104. class SortedMapCommutativeSemigroup[K, V] extends SortedMapSemigroup[K, V] with CommutativeSemigroup[SortedMap[K, V]]
  105. class SortedMapEq[K, V] extends Eq[SortedMap[K, V]]
  106. class SortedMapHash[K, V] extends SortedMapEq[K, V] with Hash[SortedMap[K, V]]
  107. trait SortedMapInstances extends SortedMapInstances2
  108. class SortedMapMonoid[K, V] extends SortedMapSemigroup[K, V] with Monoid[SortedMap[K, V]]
  109. class SortedMapSemigroup[K, V] extends Semigroup[SortedMap[K, V]]
  110. class SortedSetHash[A] extends Hash[SortedSet[A]]
  111. trait SortedSetInstances extends SortedSetInstances1
  112. class SortedSetOrder[A] extends Order[SortedSet[A]]
  113. class SortedSetSemilattice[A] extends BoundedSemilattice[SortedSet[A]]
  114. class StreamEq[A] extends Eq[Stream[A]]
  115. class StreamHash[A] extends StreamEq[A] with Hash[Stream[A]]
  116. trait StreamInstances extends StreamInstances1
  117. class StreamMonoid[A] extends Monoid[Stream[A]]
  118. class StreamOrder[A] extends Order[Stream[A]]
  119. class StreamPartialOrder[A] extends PartialOrder[Stream[A]]
  120. trait StringInstances extends AnyRef
  121. trait StringLowerBounded extends LowerBounded[String]
  122. class StringMonoid extends Monoid[String]
  123. class StringOrder extends Order[String] with Hash[String] with StringLowerBounded
  124. trait SymbolInstances extends AnyRef
  125. trait SymbolLowerBounded extends LowerBounded[Symbol]
  126. class SymbolOrder extends Order[Symbol] with Hash[Symbol] with SymbolLowerBounded
  127. trait TupleInstances extends TupleInstances1
  128. trait UUIDBounded extends LowerBounded[UUID] with UpperBounded[UUID]
  129. trait UUIDInstances extends AnyRef
  130. class UnitAlgebra extends BoundedSemilattice[Unit] with CommutativeGroup[Unit]
  131. trait UnitBounded extends LowerBounded[Unit] with UpperBounded[Unit]
  132. trait UnitEnumerable extends BoundedEnumerable[Unit]
  133. trait UnitInstances extends AnyRef
  134. class UnitOrder extends Order[Unit] with Hash[Unit] with UnitBounded with UnitEnumerable
  135. class VectorEq[A] extends Eq[Vector[A]]
  136. class VectorHash[A] extends VectorEq[A] with Hash[Vector[A]]
  137. trait VectorInstances extends VectorInstances1
  138. class VectorMonoid[A] extends Monoid[Vector[A]]
  139. class VectorOrder[A] extends Order[Vector[A]]
  140. class VectorPartialOrder[A] extends PartialOrder[Vector[A]]

Value Members

  1. object StaticMethods extends HashCompat
  2. object eq extends EqInstances
  3. object hash extends HashInstances
  4. object order extends OrderInstances
  5. object partialOrder extends PartialOrderInstances