package laws
- Alphabetic
- By Inheritance
- laws
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Package Members
- package discipline
Type Members
- trait AlignLaws[F[_]] extends AnyRef
Laws that must be obeyed by any
Align
. - trait AlternativeLaws[F[_]] extends NonEmptyAlternativeLaws[F] with MonoidKLaws[F]
- trait ApplicativeErrorLaws[F[_], E] extends ApplicativeLaws[F]
- trait ApplicativeLaws[F[_]] extends ApplyLaws[F]
Laws that must be obeyed by any
Applicative
. - trait ApplyLaws[F[_]] extends FunctorLaws[F] with SemigroupalLaws[F]
Laws that must be obeyed by any
Apply
. - trait ArrowChoiceLaws[F[_, _]] extends ArrowLaws[F] with ChoiceLaws[F]
Laws that must be obeyed by any
cats.arrow.ArrowChoice
. - trait ArrowLaws[F[_, _]] extends CategoryLaws[F] with StrongLaws[F]
Laws that must be obeyed by any
cats.arrow.Arrow
. - trait BifoldableLaws[F[_, _]] extends AnyRef
- trait BifunctorLaws[F[_, _]] extends AnyRef
Laws that must be obeyed by any
Bifunctor
. - trait BimonadLaws[F[_]] extends MonadLaws[F] with ComonadLaws[F]
Laws that must be obeyed by any
Bimonad
.Laws that must be obeyed by any
Bimonad
.For more information, see definition 4.1 from this paper: http://arxiv.org/pdf/0710.1163v3.pdf
- trait BitraverseLaws[F[_, _]] extends BifoldableLaws[F] with BifunctorLaws[F]
- trait CategoryLaws[F[_, _]] extends ComposeLaws[F]
Laws that must be obeyed by any
cats.arrow.Category
. - trait ChoiceLaws[F[_, _]] extends CategoryLaws[F]
Laws that must be obeyed by any
cats.arrow.Choice
. - trait CoflatMapLaws[F[_]] extends FunctorLaws[F]
Laws that must be obeyed by any
CoflatMap
. - trait CommutativeApplicativeLaws[F[_]] extends CommutativeApplyLaws[F] with ApplicativeLaws[F]
- trait CommutativeApplyLaws[F[_]] extends ApplyLaws[F]
Laws that must be obeyed by any
CommutativeApply
. - trait CommutativeArrowLaws[F[_, _]] extends ArrowLaws[F]
Reference: "Causal Commutative Arrows", Journal of Functional Programming Figure 4.
- trait CommutativeFlatMapLaws[F[_]] extends CommutativeApplyLaws[F] with FlatMapLaws[F]
Laws that must be obeyed by any
CommutativeFlatMap
. - trait CommutativeMonadLaws[F[_]] extends MonadLaws[F] with CommutativeFlatMapLaws[F] with CommutativeApplicativeLaws[F]
Laws that must be obeyed by any
CommutativeMonad
. - trait ComonadLaws[F[_]] extends CoflatMapLaws[F]
Laws that must be obeyed by any
Comonad
. - trait ComposeLaws[F[_, _]] extends AnyRef
Laws that must be obeyed by any
cats.arrow.Compose
. - trait ContravariantLaws[F[_]] extends InvariantLaws[F]
Laws that must be obeyed by any
cats.Contravariant
. - trait ContravariantMonoidalLaws[F[_]] extends ContravariantSemigroupalLaws[F]
Laws that must hold for any
cats.ContravariantMonoidal
. - trait ContravariantSemigroupalLaws[F[_]] extends ContravariantLaws[F] with SemigroupalLaws[F]
Laws that are expected for any
cats.ContravariantSemigroupal
. - trait DeferLaws[F[_]] extends AnyRef
Laws that must be obeyed by any
Defer
. - trait DistributiveLaws[F[_]] extends FunctorLaws[F]
- trait FlatMapLaws[F[_]] extends ApplyLaws[F]
Laws that must be obeyed by any
FlatMap
. - trait FoldableLaws[F[_]] extends UnorderedFoldableLaws[F]
- trait FunctorFilterLaws[F[_]] extends AnyRef
- trait FunctorLaws[F[_]] extends InvariantLaws[F]
Laws that must be obeyed by any
Functor
. - trait InjectKLaws[F[_], G[_]] extends AnyRef
- trait InjectLaws[A, B] extends AnyRef
- trait InvariantLaws[F[_]] extends AnyRef
Laws that must be obeyed by any
cats.Invariant
. - trait InvariantMonoidalLaws[F[_]] extends InvariantSemigroupalLaws[F]
Laws that must be obeyed by any
cats.InvariantMonoidal
. - trait InvariantSemigroupalLaws[F[_]] extends InvariantLaws[F] with SemigroupalLaws[F]
Laws that are expected for any
cats.InvariantSemigroupal
. - type IsEq[A] = kernel.laws.IsEq[A]
- implicit final class IsEqArrow[A] extends AnyVal
- trait MonadErrorLaws[F[_], E] extends ApplicativeErrorLaws[F, E] with MonadLaws[F]
- trait MonadLaws[F[_]] extends ApplicativeLaws[F] with FlatMapLaws[F]
Laws that must be obeyed by any
Monad
. - trait MonoidKLaws[F[_]] extends SemigroupKLaws[F]
Laws that must be obeyed by any
cats.MonoidK
. - trait NonEmptyAlternativeLaws[F[_]] extends ApplicativeLaws[F] with SemigroupKLaws[F]
- trait NonEmptyParallelLaws[M[_]] extends AnyRef
Laws that must be obeyed by any
cats.NonEmptyParallel
. - trait NonEmptyTraverseLaws[F[_]] extends TraverseLaws[F] with ReducibleLaws[F]
- trait ParallelLaws[M[_]] extends NonEmptyParallelLaws[M]
Laws that must be obeyed by any
cats.Parallel
. - trait ProfunctorLaws[F[_, _]] extends AnyRef
Laws that must be obeyed by any
cats.functor.Profunctor
. - trait ReducibleLaws[F[_]] extends FoldableLaws[F]
- trait RepresentableLaws[F[_], R] extends AnyRef
Laws that must be obeyed by any
Representable
functor. - trait SemigroupKLaws[F[_]] extends AnyRef
Laws that must be obeyed by any
cats.SemigroupK
. - trait SemigroupalLaws[F[_]] extends AnyRef
Laws that must be obeyed by any
cats.Semigroupal
. - trait ShortCircuitingLaws[F[_]] extends AnyRef
- trait StrongLaws[F[_, _]] extends ProfunctorLaws[F]
Laws that must be obeyed by any
cats.functor.Strong
.Laws that must be obeyed by any
cats.functor.Strong
.See: E. Rivas, M. Jaskelioff Notions of Computation as Monoids, Chapter 7 See: Haskell Data.Profunctor.Strong
- trait TraverseFilterLaws[F[_]] extends FunctorFilterLaws[F]
- trait TraverseLaws[F[_]] extends FunctorLaws[F] with FoldableLaws[F] with UnorderedTraverseLaws[F]
- trait UnorderedFoldableLaws[F[_]] extends AnyRef
- trait UnorderedTraverseLaws[F[_]] extends UnorderedFoldableLaws[F]
Value Members
- val IsEq: kernel.laws.IsEq.type
- object AlignLaws
- object AlternativeLaws
- Annotations
- @suppressUnusedImportWarningForScalaVersionSpecific()
- object ApplicativeErrorLaws
- object ApplicativeLaws
- object ApplyLaws
- object ArrowChoiceLaws
- object ArrowLaws
- object BifoldableLaws
- object BifunctorLaws
- object BimonadLaws
- object BitraverseLaws
- object CategoryLaws
- object ChoiceLaws
- object CoflatMapLaws
- object CommutativeApplicativeLaws
- object CommutativeApplyLaws
- object CommutativeArrowLaws
- object CommutativeFlatMapLaws
- object CommutativeMonadLaws
- object ComonadLaws
- object ComposeLaws
- object ContravariantLaws
- object ContravariantMonoidalLaws
- object ContravariantSemigroupalLaws
- object DeferLaws
- object DistributiveLaws
- object FlatMapLaws
- object FoldableLaws
- object FunctorFilterLaws
- object FunctorLaws
- object InjectKLaws
- object InjectLaws
- object InvariantLaws
- object InvariantMonoidalLaws
- object InvariantSemigroupalLaws
- object MonadErrorLaws
- object MonadLaws
- object MonoidKLaws
- object NonEmptyAlternativeLaws
- object NonEmptyParallelLaws
- object NonEmptyTraverseLaws
- object ParallelLaws
- object ProfunctorLaws
- object ReducibleLaws
- object RepresentableLaws
- object SemigroupKLaws
- object SemigroupalLaws
- object ShortCircuitingLaws
- object StrongLaws
- object TraverseFilterLaws
- object TraverseLaws
- object UnorderedFoldableLaws
- object UnorderedTraverseLaws