Documentation ¶
Index ¶
- func ApplyAssertAssociativeComposition[HKTA, HKTB, HKTC, HKTAB, HKTBC, HKTAC, HKTABAC, A, B, C any](t *testing.T, eq E.Eq[HKTC], fofab pointed.Pointed[func(A) B, HKTAB], ...) func(fa HKTA) bool
- func ApplyAssertLaws[HKTA, HKTB, HKTC, HKTAB, HKTBC, HKTAC, HKTABAC, A, B, C any](t *testing.T, eqa E.Eq[HKTA], eqc E.Eq[HKTC], ...) func(fa HKTA) bool
- func AssertAssociativeComposition[HKTA, HKTB, HKTC, HKTAB, HKTBC, HKTAC, HKTABAC, A, B, C any](t *testing.T, eq E.Eq[HKTC], fofab func(func(A) B) HKTAB, ...) func(fa HKTA) booldeprecated
- func AssertLaws[HKTA, HKTB, HKTC, HKTAB, HKTBC, HKTAC, HKTABAC, A, B, C any](t *testing.T, eqa E.Eq[HKTA], eqc E.Eq[HKTC], fofab func(func(A) B) HKTAB, ...) func(fa HKTA) booldeprecated
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ApplyAssertAssociativeComposition ¶ added in v1.0.127
func ApplyAssertAssociativeComposition[HKTA, HKTB, HKTC, HKTAB, HKTBC, HKTAC, HKTABAC, A, B, C any](t *testing.T, eq E.Eq[HKTC], fofab pointed.Pointed[func(A) B, HKTAB], fofbc pointed.Pointed[func(B) C, HKTBC], fmap functor.Functor[func(B) C, func(func(A) B) func(A) C, HKTBC, HKTABAC], fapab apply.Apply[A, B, HKTA, HKTB, HKTAB], fapbc apply.Apply[B, C, HKTB, HKTC, HKTBC], fapac apply.Apply[A, C, HKTA, HKTC, HKTAC], fapabac apply.Apply[func(A) B, func(A) C, HKTAB, HKTAC, HKTABAC], ab func(A) B, bc func(B) C, ) func(fa HKTA) bool
Apply associative composition law
F.ap(F.ap(F.map(fbc, bc => ab => a => bc(ab(a))), fab), fa) <-> F.ap(fbc, F.ap(fab, fa))
func ApplyAssertLaws ¶ added in v1.0.127
func ApplyAssertLaws[HKTA, HKTB, HKTC, HKTAB, HKTBC, HKTAC, HKTABAC, A, B, C any](t *testing.T, eqa E.Eq[HKTA], eqc E.Eq[HKTC], fofab pointed.Pointed[func(A) B, HKTAB], fofbc pointed.Pointed[func(B) C, HKTBC], faa functor.Functor[A, A, HKTA, HKTA], fmap functor.Functor[func(B) C, func(func(A) B) func(A) C, HKTBC, HKTABAC], fapab apply.Apply[A, B, HKTA, HKTB, HKTAB], fapbc apply.Apply[B, C, HKTB, HKTC, HKTBC], fapac apply.Apply[A, C, HKTA, HKTC, HKTAC], fapabac apply.Apply[func(A) B, func(A) C, HKTAB, HKTAC, HKTABAC], ab func(A) B, bc func(B) C, ) func(fa HKTA) bool
ApplyAssertLaws asserts the apply laws `identity`, `composition` and `associative composition`
func AssertAssociativeComposition
deprecated
func AssertAssociativeComposition[HKTA, HKTB, HKTC, HKTAB, HKTBC, HKTAC, HKTABAC, A, B, C any](t *testing.T, eq E.Eq[HKTC], fofab func(func(A) B) HKTAB, fofbc func(func(B) C) HKTBC, fmap func(HKTBC, func(func(B) C) func(func(A) B) func(A) C) HKTABAC, fapab func(HKTAB, HKTA) HKTB, fapbc func(HKTBC, HKTB) HKTC, fapac func(HKTAC, HKTA) HKTC, fapabac func(HKTABAC, HKTAB) HKTAC, ab func(A) B, bc func(B) C, ) func(fa HKTA) bool
Apply associative composition law
F.ap(F.ap(F.map(fbc, bc => ab => a => bc(ab(a))), fab), fa) <-> F.ap(fbc, F.ap(fab, fa))
Deprecated: use ApplyAssertAssociativeComposition instead
func AssertLaws
deprecated
func AssertLaws[HKTA, HKTB, HKTC, HKTAB, HKTBC, HKTAC, HKTABAC, A, B, C any](t *testing.T, eqa E.Eq[HKTA], eqc E.Eq[HKTC], fofab func(func(A) B) HKTAB, fofbc func(func(B) C) HKTBC, faa func(HKTA, func(A) A) HKTA, fab func(HKTA, func(A) B) HKTB, fac func(HKTA, func(A) C) HKTC, fbc func(HKTB, func(B) C) HKTC, fmap func(HKTBC, func(func(B) C) func(func(A) B) func(A) C) HKTABAC, fapab func(HKTAB, HKTA) HKTB, fapbc func(HKTBC, HKTB) HKTC, fapac func(HKTAC, HKTA) HKTC, fapabac func(HKTABAC, HKTAB) HKTAC, ab func(A) B, bc func(B) C, ) func(fa HKTA) bool
AssertLaws asserts the apply laws `identity`, `composition` and `associative composition`
Deprecated: use ApplyAssertLaws instead
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.