package fromeither

import "github.com/IBM/fp-go/internal/fromeither"

Index

Functions

func ChainEitherK

func ChainEitherK[A, E, B, HKTEA, HKTEB any](
	mchain func(func(A) HKTEB) func(HKTEA) HKTEB,
	fromEither func(ET.Either[E, B]) HKTEB,
	f func(A) ET.Either[E, B]) func(HKTEA) HKTEB

func ChainFirstEitherK

func ChainFirstEitherK[A, E, B, HKTEA, HKTEB any](
	mchain func(func(A) HKTEA) func(HKTEA) HKTEA,
	mmap func(func(B) A) func(HKTEB) HKTEA,
	fromEither func(ET.Either[E, B]) HKTEB,
	f func(A) ET.Either[E, B]) func(HKTEA) HKTEA

func ChainOptionK

func ChainOptionK[A, E, B, HKTEA, HKTEB any](
	mchain func(HKTEA, func(A) HKTEB) HKTEB,
	fromEither func(ET.Either[E, B]) HKTEB,
	onNone func() E,
) func(f func(A) O.Option[B]) func(ma HKTEA) HKTEB

func FromOption

func FromOption[A, HKTEA, E any](fromEither func(ET.Either[E, A]) HKTEA, onNone func() E) func(ma O.Option[A]) HKTEA

func FromOptionK

func FromOptionK[A, E, B, HKTEB any](
	fromEither func(ET.Either[E, B]) HKTEB,
	onNone func() E) func(f func(A) O.Option[B]) func(A) HKTEB

func FromPredicate

func FromPredicate[E, A, HKTEA any](fromEither func(ET.Either[E, A]) HKTEA, pred func(A) bool, onFalse func(A) E) func(A) HKTEA

func MonadChainEitherK

func MonadChainEitherK[A, E, B, HKTEA, HKTEB any](
	mchain func(HKTEA, func(A) HKTEB) HKTEB,
	fromEither func(ET.Either[E, B]) HKTEB,
	ma HKTEA,
	f func(A) ET.Either[E, B]) HKTEB

func MonadChainFirstEitherK

func MonadChainFirstEitherK[A, E, B, HKTEA, HKTEB any](
	mchain func(HKTEA, func(A) HKTEA) HKTEA,
	mmap func(HKTEB, func(B) A) HKTEA,
	fromEither func(ET.Either[E, B]) HKTEB,
	ma HKTEA,
	f func(A) ET.Either[E, B]) HKTEA

func MonadFromOption

func MonadFromOption[E, A, HKTEA any](
	fromEither func(ET.Either[E, A]) HKTEA,
	onNone func() E,
	ma O.Option[A],
) HKTEA

Types

type FromEither

type FromEither[E, A, HKTA any] interface {
	FromEither(ET.Either[E, A]) HKTA
}

Source Files

either.go types.go

Version
v1.0.151 (latest)
Published
Nov 23, 2024
Platform
linux/amd64
Imports
4 packages
Last checked
4 months ago

Tools for package owners.