Documentation
¶
Overview ¶
Package option provides cross type transformations for `mo.Option`.
The functions provided by this package are not methods of `mo.Option` due to the lack of method type parameters on methods. This is part of the design decision of the Go's generics as explained here: https://go.googlesource.com/proposal/+/refs/heads/master/design/43651-type-parameters.md#No-parameterized-methods
Index ¶
- func FlatMap[I any, O any](f func(I) mo.Option[O]) func(opt mo.Option[I]) mo.Option[O]
- func FlatMatch[I any, O any](onValue func(I) mo.Option[O], onNone func() mo.Option[O]) func(opt mo.Option[I]) mo.Option[O]
- func Map[I any, O any](f func(I) O) func(opt mo.Option[I]) mo.Option[O]
- func Match[I any, O any](onValue func(I) (O, bool), onNone func() (O, bool)) func(opt mo.Option[I]) mo.Option[O]
- func Pipe1[A any, B any](source mo.Option[A], operator1 func(mo.Option[A]) mo.Option[B]) mo.Option[B]
- func Pipe10[A any, B any, C any, D any, E any, F any, G any, H any, I any, J any, K any](source mo.Option[A], operator1 func(mo.Option[A]) mo.Option[B], ...) mo.Option[K]
- func Pipe2[A any, B any, C any](source mo.Option[A], operator1 func(mo.Option[A]) mo.Option[B], ...) mo.Option[C]
- func Pipe3[A any, B any, C any, D any](source mo.Option[A], operator1 func(mo.Option[A]) mo.Option[B], ...) mo.Option[D]
- func Pipe4[A any, B any, C any, D any, E any](source mo.Option[A], operator1 func(mo.Option[A]) mo.Option[B], ...) mo.Option[E]
- func Pipe5[A any, B any, C any, D any, E any, F any](source mo.Option[A], operator1 func(mo.Option[A]) mo.Option[B], ...) mo.Option[F]
- func Pipe6[A any, B any, C any, D any, E any, F any, G any](source mo.Option[A], operator1 func(mo.Option[A]) mo.Option[B], ...) mo.Option[G]
- func Pipe7[A any, B any, C any, D any, E any, F any, G any, H any](source mo.Option[A], operator1 func(mo.Option[A]) mo.Option[B], ...) mo.Option[H]
- func Pipe8[A any, B any, C any, D any, E any, F any, G any, H any, I any](source mo.Option[A], operator1 func(mo.Option[A]) mo.Option[B], ...) mo.Option[I]
- func Pipe9[A any, B any, C any, D any, E any, F any, G any, H any, I any, J any](source mo.Option[A], operator1 func(mo.Option[A]) mo.Option[B], ...) mo.Option[J]
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FlatMap ¶
FlatMap returns the result of applying `f` to the value of opt, if present, and None otherwise.
func FlatMatch ¶
func FlatMatch[I any, O any](onValue func(I) mo.Option[O], onNone func() mo.Option[O]) func(opt mo.Option[I]) mo.Option[O]
FlatMatch returns the result of applying `onValue` to the value of opt, if present, or the result of `onNone` if absent.
func Map ¶
Map returns a new `mo.Option` wrapping the result of applying `f` to the value of opt, if present, and None otherwise.
func Match ¶
func Match[I any, O any](onValue func(I) (O, bool), onNone func() (O, bool)) func(opt mo.Option[I]) mo.Option[O]
Match returns a new `mo.Option` from the result of applying `onValue` to the value of opt, if present, or from the result of calling `onNone` if absent.
func Pipe10 ¶
func Pipe10[A any, B any, C any, D any, E any, F any, G any, H any, I any, J any, K any]( source mo.Option[A], operator1 func(mo.Option[A]) mo.Option[B], operator2 func(mo.Option[B]) mo.Option[C], operator3 func(mo.Option[C]) mo.Option[D], operator4 func(mo.Option[D]) mo.Option[E], operator5 func(mo.Option[E]) mo.Option[F], operator6 func(mo.Option[F]) mo.Option[G], operator7 func(mo.Option[G]) mo.Option[H], operator8 func(mo.Option[H]) mo.Option[I], operator9 func(mo.Option[I]) mo.Option[J], operator10 func(mo.Option[J]) mo.Option[K], ) mo.Option[K]
func Pipe5 ¶
func Pipe5[A any, B any, C any, D any, E any, F any]( source mo.Option[A], operator1 func(mo.Option[A]) mo.Option[B], operator2 func(mo.Option[B]) mo.Option[C], operator3 func(mo.Option[C]) mo.Option[D], operator4 func(mo.Option[D]) mo.Option[E], operator5 func(mo.Option[E]) mo.Option[F], ) mo.Option[F]
func Pipe6 ¶
func Pipe6[A any, B any, C any, D any, E any, F any, G any]( source mo.Option[A], operator1 func(mo.Option[A]) mo.Option[B], operator2 func(mo.Option[B]) mo.Option[C], operator3 func(mo.Option[C]) mo.Option[D], operator4 func(mo.Option[D]) mo.Option[E], operator5 func(mo.Option[E]) mo.Option[F], operator6 func(mo.Option[F]) mo.Option[G], ) mo.Option[G]
func Pipe7 ¶
func Pipe7[A any, B any, C any, D any, E any, F any, G any, H any]( source mo.Option[A], operator1 func(mo.Option[A]) mo.Option[B], operator2 func(mo.Option[B]) mo.Option[C], operator3 func(mo.Option[C]) mo.Option[D], operator4 func(mo.Option[D]) mo.Option[E], operator5 func(mo.Option[E]) mo.Option[F], operator6 func(mo.Option[F]) mo.Option[G], operator7 func(mo.Option[G]) mo.Option[H], ) mo.Option[H]
func Pipe8 ¶
func Pipe8[A any, B any, C any, D any, E any, F any, G any, H any, I any]( source mo.Option[A], operator1 func(mo.Option[A]) mo.Option[B], operator2 func(mo.Option[B]) mo.Option[C], operator3 func(mo.Option[C]) mo.Option[D], operator4 func(mo.Option[D]) mo.Option[E], operator5 func(mo.Option[E]) mo.Option[F], operator6 func(mo.Option[F]) mo.Option[G], operator7 func(mo.Option[G]) mo.Option[H], operator8 func(mo.Option[H]) mo.Option[I], ) mo.Option[I]
func Pipe9 ¶
func Pipe9[A any, B any, C any, D any, E any, F any, G any, H any, I any, J any]( source mo.Option[A], operator1 func(mo.Option[A]) mo.Option[B], operator2 func(mo.Option[B]) mo.Option[C], operator3 func(mo.Option[C]) mo.Option[D], operator4 func(mo.Option[D]) mo.Option[E], operator5 func(mo.Option[E]) mo.Option[F], operator6 func(mo.Option[F]) mo.Option[G], operator7 func(mo.Option[G]) mo.Option[H], operator8 func(mo.Option[H]) mo.Option[I], operator9 func(mo.Option[I]) mo.Option[J], ) mo.Option[J]
Types ¶
This section is empty.