Help us shape the future of Go! Take the 2026 Go Developer Survey

generic

package
v1.0.97 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 12, 2024 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Overview

Code generated by go generate; DO NOT EDIT. This file was generated by robots at 2023-10-23 08:31:01.9227118 +0200 CEST m=+0.009977901

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func After added in v1.0.97

func After[GA ~func() O.Option[A], A any](timestamp time.Time) func(GA) GA

After creates an operation that passes after the given time.Time

func Alt added in v1.0.60

func Alt[LAZY ~func() GIOA, GIOA ~func() O.Option[A], A any](second LAZY) func(GIOA) GIOA

func Ap

func Ap[GB ~func() O.Option[B], GAB ~func() O.Option[func(A) B], GA ~func() O.Option[A], A, B any](ma GA) func(GAB) GB

func Bracket added in v1.0.50

func Bracket[
	GA ~func() O.Option[A],
	GB ~func() O.Option[B],
	GANY ~func() O.Option[ANY],
	A, B, ANY any](

	acquire GA,
	use func(A) GB,
	release func(A, O.Option[B]) GANY,
) GB

Bracket makes sure that a resource is cleaned up in the event of an error. The release action is called regardless of whether the body action returns and error or not.

func Chain

func Chain[GA ~func() O.Option[A], GB ~func() O.Option[B], A, B any](f func(A) GB) func(GA) GB

func ChainFirst added in v1.0.65

func ChainFirst[GA ~func() O.Option[A], GB ~func() O.Option[B], A, B any](f func(A) GB) func(GA) GA

ChainFirst runs the monad returned by the function but returns the result of the original monad

func ChainFirstIOK added in v1.0.65

func ChainFirstIOK[GA ~func() O.Option[A], GIOB ~func() B, A, B any](f func(A) GIOB) func(GA) GA

ChainFirstIOK runs the monad returned by the function but returns the result of the original monad

func ChainIOK

func ChainIOK[GA ~func() O.Option[A], GB ~func() O.Option[B], GR ~func() B, A, B any](f func(A) GR) func(GA) GB

func ChainOptionK

func ChainOptionK[GA ~func() O.Option[A], GB ~func() O.Option[B], A, B any](f func(A) O.Option[B]) func(GA) GB

func Defer

func Defer[GA ~func() O.Option[A], A any](gen func() GA) GA

Defer creates an IO by creating a brand new IO via a generator function, each time

func Delay

func Delay[GA ~func() O.Option[A], A any](delay time.Duration) func(GA) GA

Delay creates an operation that passes in the value after some delay

func Flatten

func Flatten[GA ~func() O.Option[A], GAA ~func() O.Option[GA], A any](mma GAA) GA

func Fold

func Fold[GA ~func() O.Option[A], GB ~func() B, A, B any](onNone func() GB, onSome func(A) GB) func(GA) GB

Fold convers an IOOption into an IO

func FromEither added in v1.0.33

func FromEither[GA ~func() O.Option[A], E, A any](e ET.Either[E, A]) GA

func FromIO

func FromIO[GA ~func() O.Option[A], GR ~func() A, A any](mr GR) GA

func FromOption

func FromOption[GA ~func() O.Option[A], A any](o O.Option[A]) GA

func MakeIO

func MakeIO[GA ~func() O.Option[A], A any](f GA) GA

func Map

func Map[GA ~func() O.Option[A], GB ~func() O.Option[B], A, B any](f func(A) B) func(GA) GB

func Memoize

func Memoize[GA ~func() O.Option[A], A any](ma GA) GA

Memoize computes the value of the provided IO monad lazily but exactly once

func MonadAlt added in v1.0.60

func MonadAlt[LAZY ~func() GIOA, GIOA ~func() O.Option[A], A any](first GIOA, second LAZY) GIOA

func MonadAp

func MonadAp[GB ~func() O.Option[B], GAB ~func() O.Option[func(A) B], GA ~func() O.Option[A], A, B any](mab GAB, ma GA) GB

func MonadChain

func MonadChain[GA ~func() O.Option[A], GB ~func() O.Option[B], A, B any](fa GA, f func(A) GB) GB

func MonadChainFirst added in v1.0.65

func MonadChainFirst[GA ~func() O.Option[A], GB ~func() O.Option[B], A, B any](ma GA, f func(A) GB) GA

MonadChainFirst runs the monad returned by the function but returns the result of the original monad

func MonadChainFirstIOK added in v1.0.65

func MonadChainFirstIOK[GA ~func() O.Option[A], GIOB ~func() B, A, B any](first GA, f func(A) GIOB) GA

MonadChainFirstIOK runs the monad returned by the function but returns the result of the original monad

func MonadChainIOK

func MonadChainIOK[GA ~func() O.Option[A], GB ~func() O.Option[B], GR ~func() B, A, B any](ma GA, f func(A) GR) GB

func MonadChainOptionK

func MonadChainOptionK[GA ~func() O.Option[A], GB ~func() O.Option[B], A, B any](ma GA, f func(A) O.Option[B]) GB

func MonadMap

func MonadMap[GA ~func() O.Option[A], GB ~func() O.Option[B], A, B any](fa GA, f func(A) B) GB

func MonadOf

func MonadOf[GA ~func() O.Option[A], A any](r A) GA

func None

func None[GA ~func() O.Option[A], A any]() GA

func Of

func Of[GA ~func() O.Option[A], A any](r A) GA

func Optionize0

func Optionize0[GA ~func() O.Option[A], A any](f func() (A, bool)) func() GA

func Optionize1

func Optionize1[GA ~func() O.Option[A], T1, A any](f func(t1 T1) (A, bool)) func(T1) GA

func Optionize2

func Optionize2[GA ~func() O.Option[A], T1, T2, A any](f func(t1 T1, t2 T2) (A, bool)) func(T1, T2) GA

func Optionize3

func Optionize3[GA ~func() O.Option[A], T1, T2, T3, A any](f func(t1 T1, t2 T2, t3 T3) (A, bool)) func(T1, T2, T3) GA

func Optionize4

func Optionize4[GA ~func() O.Option[A], T1, T2, T3, T4, A any](f func(t1 T1, t2 T2, t3 T3, t4 T4) (A, bool)) func(T1, T2, T3, T4) GA

func Retrying

func Retrying[GA ~func() O.Option[A], A any](
	policy R.RetryPolicy,
	action func(R.RetryStatus) GA,
	check func(A) bool,
) GA

Retry combinator for actions that don't raise exceptions, but signal in their type the outcome has failed. Examples are the `Option`, `Either` and `EitherT` monads.

func SequenceArray

func SequenceArray[TB ~func() O.Option[B], TBS ~func() O.Option[GB], GA ~[]TB, GB ~[]B, A, B any](ma GA) TBS

func SequenceT1

func SequenceT1[
	G_TUPLE1 ~func() O.Option[T.Tuple1[T1]],
	G_T1 ~func() O.Option[T1],
	T1 any](
	t1 G_T1,
) G_TUPLE1

SequenceT1 converts 1 [func() O.Option[T]] into a [func() O.Option[T.Tuple1[T1]]]

func SequenceT2

func SequenceT2[
	G_TUPLE2 ~func() O.Option[T.Tuple2[T1, T2]],
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	T1, T2 any](
	t1 G_T1,
	t2 G_T2,
) G_TUPLE2

SequenceT2 converts 2 [func() O.Option[T]] into a [func() O.Option[T.Tuple2[T1, T2]]]

func SequenceT3

func SequenceT3[
	G_TUPLE3 ~func() O.Option[T.Tuple3[T1, T2, T3]],
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	T1, T2, T3 any](
	t1 G_T1,
	t2 G_T2,
	t3 G_T3,
) G_TUPLE3

SequenceT3 converts 3 [func() O.Option[T]] into a [func() O.Option[T.Tuple3[T1, T2, T3]]]

func SequenceT4

func SequenceT4[
	G_TUPLE4 ~func() O.Option[T.Tuple4[T1, T2, T3, T4]],
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	T1, T2, T3, T4 any](
	t1 G_T1,
	t2 G_T2,
	t3 G_T3,
	t4 G_T4,
) G_TUPLE4

SequenceT4 converts 4 [func() O.Option[T]] into a [func() O.Option[T.Tuple4[T1, T2, T3, T4]]]

func SequenceT5 added in v1.0.7

func SequenceT5[
	G_TUPLE5 ~func() O.Option[T.Tuple5[T1, T2, T3, T4, T5]],
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	G_T5 ~func() O.Option[T5],
	T1, T2, T3, T4, T5 any](
	t1 G_T1,
	t2 G_T2,
	t3 G_T3,
	t4 G_T4,
	t5 G_T5,
) G_TUPLE5

SequenceT5 converts 5 [func() O.Option[T]] into a [func() O.Option[T.Tuple5[T1, T2, T3, T4, T5]]]

func SequenceT6 added in v1.0.7

func SequenceT6[
	G_TUPLE6 ~func() O.Option[T.Tuple6[T1, T2, T3, T4, T5, T6]],
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	G_T5 ~func() O.Option[T5],
	G_T6 ~func() O.Option[T6],
	T1, T2, T3, T4, T5, T6 any](
	t1 G_T1,
	t2 G_T2,
	t3 G_T3,
	t4 G_T4,
	t5 G_T5,
	t6 G_T6,
) G_TUPLE6

SequenceT6 converts 6 [func() O.Option[T]] into a [func() O.Option[T.Tuple6[T1, T2, T3, T4, T5, T6]]]

func SequenceT7 added in v1.0.7

func SequenceT7[
	G_TUPLE7 ~func() O.Option[T.Tuple7[T1, T2, T3, T4, T5, T6, T7]],
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	G_T5 ~func() O.Option[T5],
	G_T6 ~func() O.Option[T6],
	G_T7 ~func() O.Option[T7],
	T1, T2, T3, T4, T5, T6, T7 any](
	t1 G_T1,
	t2 G_T2,
	t3 G_T3,
	t4 G_T4,
	t5 G_T5,
	t6 G_T6,
	t7 G_T7,
) G_TUPLE7

SequenceT7 converts 7 [func() O.Option[T]] into a [func() O.Option[T.Tuple7[T1, T2, T3, T4, T5, T6, T7]]]

func SequenceT8 added in v1.0.7

func SequenceT8[
	G_TUPLE8 ~func() O.Option[T.Tuple8[T1, T2, T3, T4, T5, T6, T7, T8]],
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	G_T5 ~func() O.Option[T5],
	G_T6 ~func() O.Option[T6],
	G_T7 ~func() O.Option[T7],
	G_T8 ~func() O.Option[T8],
	T1, T2, T3, T4, T5, T6, T7, T8 any](
	t1 G_T1,
	t2 G_T2,
	t3 G_T3,
	t4 G_T4,
	t5 G_T5,
	t6 G_T6,
	t7 G_T7,
	t8 G_T8,
) G_TUPLE8

SequenceT8 converts 8 [func() O.Option[T]] into a [func() O.Option[T.Tuple8[T1, T2, T3, T4, T5, T6, T7, T8]]]

func SequenceT9 added in v1.0.7

func SequenceT9[
	G_TUPLE9 ~func() O.Option[T.Tuple9[T1, T2, T3, T4, T5, T6, T7, T8, T9]],
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	G_T5 ~func() O.Option[T5],
	G_T6 ~func() O.Option[T6],
	G_T7 ~func() O.Option[T7],
	G_T8 ~func() O.Option[T8],
	G_T9 ~func() O.Option[T9],
	T1, T2, T3, T4, T5, T6, T7, T8, T9 any](
	t1 G_T1,
	t2 G_T2,
	t3 G_T3,
	t4 G_T4,
	t5 G_T5,
	t6 G_T6,
	t7 G_T7,
	t8 G_T8,
	t9 G_T9,
) G_TUPLE9

SequenceT9 converts 9 [func() O.Option[T]] into a [func() O.Option[T.Tuple9[T1, T2, T3, T4, T5, T6, T7, T8, T9]]]

func SequenceT10 added in v1.0.7

func SequenceT10[
	G_TUPLE10 ~func() O.Option[T.Tuple10[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]],
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	G_T5 ~func() O.Option[T5],
	G_T6 ~func() O.Option[T6],
	G_T7 ~func() O.Option[T7],
	G_T8 ~func() O.Option[T8],
	G_T9 ~func() O.Option[T9],
	G_T10 ~func() O.Option[T10],
	T1, T2, T3, T4, T5, T6, T7, T8, T9, T10 any](
	t1 G_T1,
	t2 G_T2,
	t3 G_T3,
	t4 G_T4,
	t5 G_T5,
	t6 G_T6,
	t7 G_T7,
	t8 G_T8,
	t9 G_T9,
	t10 G_T10,
) G_TUPLE10

SequenceT10 converts 10 [func() O.Option[T]] into a [func() O.Option[T.Tuple10[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]]]

func SequenceTuple1 added in v1.0.7

func SequenceTuple1[
	G_TUPLE1 ~func() O.Option[T.Tuple1[T1]],
	G_T1 ~func() O.Option[T1],
	T1 any](t T.Tuple1[G_T1]) G_TUPLE1

SequenceTuple1 converts a [T.Tuple1[func() O.Option[T]]] into a [func() O.Option[T.Tuple1[T1]]]

func SequenceTuple2 added in v1.0.7

func SequenceTuple2[
	G_TUPLE2 ~func() O.Option[T.Tuple2[T1, T2]],
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	T1, T2 any](t T.Tuple2[G_T1, G_T2]) G_TUPLE2

SequenceTuple2 converts a [T.Tuple2[func() O.Option[T]]] into a [func() O.Option[T.Tuple2[T1, T2]]]

func SequenceTuple3 added in v1.0.7

func SequenceTuple3[
	G_TUPLE3 ~func() O.Option[T.Tuple3[T1, T2, T3]],
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	T1, T2, T3 any](t T.Tuple3[G_T1, G_T2, G_T3]) G_TUPLE3

SequenceTuple3 converts a [T.Tuple3[func() O.Option[T]]] into a [func() O.Option[T.Tuple3[T1, T2, T3]]]

func SequenceTuple4 added in v1.0.7

func SequenceTuple4[
	G_TUPLE4 ~func() O.Option[T.Tuple4[T1, T2, T3, T4]],
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	T1, T2, T3, T4 any](t T.Tuple4[G_T1, G_T2, G_T3, G_T4]) G_TUPLE4

SequenceTuple4 converts a [T.Tuple4[func() O.Option[T]]] into a [func() O.Option[T.Tuple4[T1, T2, T3, T4]]]

func SequenceTuple5 added in v1.0.7

func SequenceTuple5[
	G_TUPLE5 ~func() O.Option[T.Tuple5[T1, T2, T3, T4, T5]],
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	G_T5 ~func() O.Option[T5],
	T1, T2, T3, T4, T5 any](t T.Tuple5[G_T1, G_T2, G_T3, G_T4, G_T5]) G_TUPLE5

SequenceTuple5 converts a [T.Tuple5[func() O.Option[T]]] into a [func() O.Option[T.Tuple5[T1, T2, T3, T4, T5]]]

func SequenceTuple6 added in v1.0.7

func SequenceTuple6[
	G_TUPLE6 ~func() O.Option[T.Tuple6[T1, T2, T3, T4, T5, T6]],
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	G_T5 ~func() O.Option[T5],
	G_T6 ~func() O.Option[T6],
	T1, T2, T3, T4, T5, T6 any](t T.Tuple6[G_T1, G_T2, G_T3, G_T4, G_T5, G_T6]) G_TUPLE6

SequenceTuple6 converts a [T.Tuple6[func() O.Option[T]]] into a [func() O.Option[T.Tuple6[T1, T2, T3, T4, T5, T6]]]

func SequenceTuple7 added in v1.0.7

func SequenceTuple7[
	G_TUPLE7 ~func() O.Option[T.Tuple7[T1, T2, T3, T4, T5, T6, T7]],
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	G_T5 ~func() O.Option[T5],
	G_T6 ~func() O.Option[T6],
	G_T7 ~func() O.Option[T7],
	T1, T2, T3, T4, T5, T6, T7 any](t T.Tuple7[G_T1, G_T2, G_T3, G_T4, G_T5, G_T6, G_T7]) G_TUPLE7

SequenceTuple7 converts a [T.Tuple7[func() O.Option[T]]] into a [func() O.Option[T.Tuple7[T1, T2, T3, T4, T5, T6, T7]]]

func SequenceTuple8 added in v1.0.7

func SequenceTuple8[
	G_TUPLE8 ~func() O.Option[T.Tuple8[T1, T2, T3, T4, T5, T6, T7, T8]],
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	G_T5 ~func() O.Option[T5],
	G_T6 ~func() O.Option[T6],
	G_T7 ~func() O.Option[T7],
	G_T8 ~func() O.Option[T8],
	T1, T2, T3, T4, T5, T6, T7, T8 any](t T.Tuple8[G_T1, G_T2, G_T3, G_T4, G_T5, G_T6, G_T7, G_T8]) G_TUPLE8

SequenceTuple8 converts a [T.Tuple8[func() O.Option[T]]] into a [func() O.Option[T.Tuple8[T1, T2, T3, T4, T5, T6, T7, T8]]]

func SequenceTuple9 added in v1.0.7

func SequenceTuple9[
	G_TUPLE9 ~func() O.Option[T.Tuple9[T1, T2, T3, T4, T5, T6, T7, T8, T9]],
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	G_T5 ~func() O.Option[T5],
	G_T6 ~func() O.Option[T6],
	G_T7 ~func() O.Option[T7],
	G_T8 ~func() O.Option[T8],
	G_T9 ~func() O.Option[T9],
	T1, T2, T3, T4, T5, T6, T7, T8, T9 any](t T.Tuple9[G_T1, G_T2, G_T3, G_T4, G_T5, G_T6, G_T7, G_T8, G_T9]) G_TUPLE9

SequenceTuple9 converts a [T.Tuple9[func() O.Option[T]]] into a [func() O.Option[T.Tuple9[T1, T2, T3, T4, T5, T6, T7, T8, T9]]]

func SequenceTuple10 added in v1.0.7

func SequenceTuple10[
	G_TUPLE10 ~func() O.Option[T.Tuple10[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]],
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	G_T5 ~func() O.Option[T5],
	G_T6 ~func() O.Option[T6],
	G_T7 ~func() O.Option[T7],
	G_T8 ~func() O.Option[T8],
	G_T9 ~func() O.Option[T9],
	G_T10 ~func() O.Option[T10],
	T1, T2, T3, T4, T5, T6, T7, T8, T9, T10 any](t T.Tuple10[G_T1, G_T2, G_T3, G_T4, G_T5, G_T6, G_T7, G_T8, G_T9, G_T10]) G_TUPLE10

SequenceTuple10 converts a [T.Tuple10[func() O.Option[T]]] into a [func() O.Option[T.Tuple10[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]]]

func Some

func Some[GA ~func() O.Option[A], A any](r A) GA

func TraverseArray

func TraverseArray[TB ~func() O.Option[B], TBS ~func() O.Option[GB], GA ~[]A, GB ~[]B, A, B any](f func(A) TB) func(GA) TBS

func TraverseArrayWithIndex added in v1.0.29

func TraverseArrayWithIndex[TB ~func() O.Option[B], TBS ~func() O.Option[GB], GA ~[]A, GB ~[]B, A, B any](f func(int, A) TB) func(GA) TBS

func TraverseTuple1 added in v1.0.7

func TraverseTuple1[
	G_TUPLE1 ~func() O.Option[T.Tuple1[T1]],
	F1 ~func(A1) G_T1,
	G_T1 ~func() O.Option[T1],
	A1, T1 any](f1 F1) func(T.Tuple1[A1]) G_TUPLE1

TraverseTuple1 converts a [T.Tuple1[func() O.Option[T]]] into a [func() O.Option[T.Tuple1[T1]]]

func TraverseTuple2 added in v1.0.7

func TraverseTuple2[
	G_TUPLE2 ~func() O.Option[T.Tuple2[T1, T2]],
	F1 ~func(A1) G_T1,
	F2 ~func(A2) G_T2,
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	A1, A2, T1, T2 any](f1 F1, f2 F2) func(T.Tuple2[A1, A2]) G_TUPLE2

TraverseTuple2 converts a [T.Tuple2[func() O.Option[T]]] into a [func() O.Option[T.Tuple2[T1, T2]]]

func TraverseTuple3 added in v1.0.7

func TraverseTuple3[
	G_TUPLE3 ~func() O.Option[T.Tuple3[T1, T2, T3]],
	F1 ~func(A1) G_T1,
	F2 ~func(A2) G_T2,
	F3 ~func(A3) G_T3,
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	A1, A2, A3, T1, T2, T3 any](f1 F1, f2 F2, f3 F3) func(T.Tuple3[A1, A2, A3]) G_TUPLE3

TraverseTuple3 converts a [T.Tuple3[func() O.Option[T]]] into a [func() O.Option[T.Tuple3[T1, T2, T3]]]

func TraverseTuple4 added in v1.0.7

func TraverseTuple4[
	G_TUPLE4 ~func() O.Option[T.Tuple4[T1, T2, T3, T4]],
	F1 ~func(A1) G_T1,
	F2 ~func(A2) G_T2,
	F3 ~func(A3) G_T3,
	F4 ~func(A4) G_T4,
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	A1, A2, A3, A4, T1, T2, T3, T4 any](f1 F1, f2 F2, f3 F3, f4 F4) func(T.Tuple4[A1, A2, A3, A4]) G_TUPLE4

TraverseTuple4 converts a [T.Tuple4[func() O.Option[T]]] into a [func() O.Option[T.Tuple4[T1, T2, T3, T4]]]

func TraverseTuple5 added in v1.0.7

func TraverseTuple5[
	G_TUPLE5 ~func() O.Option[T.Tuple5[T1, T2, T3, T4, T5]],
	F1 ~func(A1) G_T1,
	F2 ~func(A2) G_T2,
	F3 ~func(A3) G_T3,
	F4 ~func(A4) G_T4,
	F5 ~func(A5) G_T5,
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	G_T5 ~func() O.Option[T5],
	A1, A2, A3, A4, A5, T1, T2, T3, T4, T5 any](f1 F1, f2 F2, f3 F3, f4 F4, f5 F5) func(T.Tuple5[A1, A2, A3, A4, A5]) G_TUPLE5

TraverseTuple5 converts a [T.Tuple5[func() O.Option[T]]] into a [func() O.Option[T.Tuple5[T1, T2, T3, T4, T5]]]

func TraverseTuple6 added in v1.0.7

func TraverseTuple6[
	G_TUPLE6 ~func() O.Option[T.Tuple6[T1, T2, T3, T4, T5, T6]],
	F1 ~func(A1) G_T1,
	F2 ~func(A2) G_T2,
	F3 ~func(A3) G_T3,
	F4 ~func(A4) G_T4,
	F5 ~func(A5) G_T5,
	F6 ~func(A6) G_T6,
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	G_T5 ~func() O.Option[T5],
	G_T6 ~func() O.Option[T6],
	A1, A2, A3, A4, A5, A6, T1, T2, T3, T4, T5, T6 any](f1 F1, f2 F2, f3 F3, f4 F4, f5 F5, f6 F6) func(T.Tuple6[A1, A2, A3, A4, A5, A6]) G_TUPLE6

TraverseTuple6 converts a [T.Tuple6[func() O.Option[T]]] into a [func() O.Option[T.Tuple6[T1, T2, T3, T4, T5, T6]]]

func TraverseTuple7 added in v1.0.7

func TraverseTuple7[
	G_TUPLE7 ~func() O.Option[T.Tuple7[T1, T2, T3, T4, T5, T6, T7]],
	F1 ~func(A1) G_T1,
	F2 ~func(A2) G_T2,
	F3 ~func(A3) G_T3,
	F4 ~func(A4) G_T4,
	F5 ~func(A5) G_T5,
	F6 ~func(A6) G_T6,
	F7 ~func(A7) G_T7,
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	G_T5 ~func() O.Option[T5],
	G_T6 ~func() O.Option[T6],
	G_T7 ~func() O.Option[T7],
	A1, A2, A3, A4, A5, A6, A7, T1, T2, T3, T4, T5, T6, T7 any](f1 F1, f2 F2, f3 F3, f4 F4, f5 F5, f6 F6, f7 F7) func(T.Tuple7[A1, A2, A3, A4, A5, A6, A7]) G_TUPLE7

TraverseTuple7 converts a [T.Tuple7[func() O.Option[T]]] into a [func() O.Option[T.Tuple7[T1, T2, T3, T4, T5, T6, T7]]]

func TraverseTuple8 added in v1.0.7

func TraverseTuple8[
	G_TUPLE8 ~func() O.Option[T.Tuple8[T1, T2, T3, T4, T5, T6, T7, T8]],
	F1 ~func(A1) G_T1,
	F2 ~func(A2) G_T2,
	F3 ~func(A3) G_T3,
	F4 ~func(A4) G_T4,
	F5 ~func(A5) G_T5,
	F6 ~func(A6) G_T6,
	F7 ~func(A7) G_T7,
	F8 ~func(A8) G_T8,
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	G_T5 ~func() O.Option[T5],
	G_T6 ~func() O.Option[T6],
	G_T7 ~func() O.Option[T7],
	G_T8 ~func() O.Option[T8],
	A1, A2, A3, A4, A5, A6, A7, A8, T1, T2, T3, T4, T5, T6, T7, T8 any](f1 F1, f2 F2, f3 F3, f4 F4, f5 F5, f6 F6, f7 F7, f8 F8) func(T.Tuple8[A1, A2, A3, A4, A5, A6, A7, A8]) G_TUPLE8

TraverseTuple8 converts a [T.Tuple8[func() O.Option[T]]] into a [func() O.Option[T.Tuple8[T1, T2, T3, T4, T5, T6, T7, T8]]]

func TraverseTuple9 added in v1.0.7

func TraverseTuple9[
	G_TUPLE9 ~func() O.Option[T.Tuple9[T1, T2, T3, T4, T5, T6, T7, T8, T9]],
	F1 ~func(A1) G_T1,
	F2 ~func(A2) G_T2,
	F3 ~func(A3) G_T3,
	F4 ~func(A4) G_T4,
	F5 ~func(A5) G_T5,
	F6 ~func(A6) G_T6,
	F7 ~func(A7) G_T7,
	F8 ~func(A8) G_T8,
	F9 ~func(A9) G_T9,
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	G_T5 ~func() O.Option[T5],
	G_T6 ~func() O.Option[T6],
	G_T7 ~func() O.Option[T7],
	G_T8 ~func() O.Option[T8],
	G_T9 ~func() O.Option[T9],
	A1, A2, A3, A4, A5, A6, A7, A8, A9, T1, T2, T3, T4, T5, T6, T7, T8, T9 any](f1 F1, f2 F2, f3 F3, f4 F4, f5 F5, f6 F6, f7 F7, f8 F8, f9 F9) func(T.Tuple9[A1, A2, A3, A4, A5, A6, A7, A8, A9]) G_TUPLE9

TraverseTuple9 converts a [T.Tuple9[func() O.Option[T]]] into a [func() O.Option[T.Tuple9[T1, T2, T3, T4, T5, T6, T7, T8, T9]]]

func TraverseTuple10 added in v1.0.7

func TraverseTuple10[
	G_TUPLE10 ~func() O.Option[T.Tuple10[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]],
	F1 ~func(A1) G_T1,
	F2 ~func(A2) G_T2,
	F3 ~func(A3) G_T3,
	F4 ~func(A4) G_T4,
	F5 ~func(A5) G_T5,
	F6 ~func(A6) G_T6,
	F7 ~func(A7) G_T7,
	F8 ~func(A8) G_T8,
	F9 ~func(A9) G_T9,
	F10 ~func(A10) G_T10,
	G_T1 ~func() O.Option[T1],
	G_T2 ~func() O.Option[T2],
	G_T3 ~func() O.Option[T3],
	G_T4 ~func() O.Option[T4],
	G_T5 ~func() O.Option[T5],
	G_T6 ~func() O.Option[T6],
	G_T7 ~func() O.Option[T7],
	G_T8 ~func() O.Option[T8],
	G_T9 ~func() O.Option[T9],
	G_T10 ~func() O.Option[T10],
	A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10 any](f1 F1, f2 F2, f3 F3, f4 F4, f5 F5, f6 F6, f7 F7, f8 F8, f9 F9, f10 F10) func(T.Tuple10[A1, A2, A3, A4, A5, A6, A7, A8, A9, A10]) G_TUPLE10

TraverseTuple10 converts a [T.Tuple10[func() O.Option[T]]] into a [func() O.Option[T.Tuple10[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]]]

func WithLock added in v1.0.50

func WithLock[GA ~func() O.Option[A], A any](lock func() context.CancelFunc) func(fa GA) GA

WithLock executes the provided IO operation in the scope of a lock

func WithResource added in v1.0.66

func WithResource[
	GA ~func() O.Option[A],
	GR ~func() O.Option[R],
	GANY ~func() O.Option[ANY],
	R, A, ANY any](onCreate GR, onRelease func(R) GANY) func(func(R) GA) GA

WithResource constructs a function that creates a resource, then operates on it and then releases the resource

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL