result

package
v0.1.1 Latest Latest
Warning

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

Go to latest
Published: Feb 7, 2024 License: MIT Imports: 2 Imported by: 0

Documentation

Index

Examples

Constants

This section is empty.

Variables

View Source
var ErrFiltered = errors.New("result: filtered")

ErrFiltered is returned when the result is filtered.

Functions

func Unzip2

func Unzip2[T1, T2 any](o Result[tuple.Tuple2[T1, T2]]) (Result[T1], Result[T2])

Unzip2 converts an optional of 2-tuple to optionals of each elements.

Example
package main

import (
	"fmt"

	"github.com/shogo82148/hi/result"
	"github.com/shogo82148/hi/tuple"
)

func main() {
	ret := result.OK(tuple.New2(1, "one"))
	r1, r2 := result.Unzip2(ret)
	fmt.Println(r1.Get())
	fmt.Println(r2.Get())
}
Output:

1
one

func Unzip3

func Unzip3[T1, T2, T3 any](o Result[tuple.Tuple3[T1, T2, T3]]) (Result[T1], Result[T2], Result[T3])

Unzip3 converts an optional of 3-tuple to optionals of each elements.

func Unzip4

func Unzip4[T1, T2, T3, T4 any](o Result[tuple.Tuple4[T1, T2, T3, T4]]) (Result[T1], Result[T2], Result[T3], Result[T4])

Unzip4 converts an optional of 4-tuple to optionals of each elements.

func Unzip5

func Unzip5[T1, T2, T3, T4, T5 any](o Result[tuple.Tuple5[T1, T2, T3, T4, T5]]) (Result[T1], Result[T2], Result[T3], Result[T4], Result[T5])

Unzip5 converts an optional of 5-tuple to optionals of each elements.

func Unzip6

func Unzip6[T1, T2, T3, T4, T5, T6 any](o Result[tuple.Tuple6[T1, T2, T3, T4, T5, T6]]) (Result[T1], Result[T2], Result[T3], Result[T4], Result[T5], Result[T6])

Unzip6 converts an optional of 6-tuple to optionals of each elements.

func Unzip7

func Unzip7[T1, T2, T3, T4, T5, T6, T7 any](o Result[tuple.Tuple7[T1, T2, T3, T4, T5, T6, T7]]) (Result[T1], Result[T2], Result[T3], Result[T4], Result[T5], Result[T6], Result[T7])

Unzip7 converts an optional of 7-tuple to optionals of each elements.

func Unzip8

func Unzip8[T1, T2, T3, T4, T5, T6, T7, T8 any](o Result[tuple.Tuple8[T1, T2, T3, T4, T5, T6, T7, T8]]) (Result[T1], Result[T2], Result[T3], Result[T4], Result[T5], Result[T6], Result[T7], Result[T8])

Unzip8 converts an optional of 8-tuple to optionals of each elements.

func Unzip9

func Unzip9[T1, T2, T3, T4, T5, T6, T7, T8, T9 any](o Result[tuple.Tuple9[T1, T2, T3, T4, T5, T6, T7, T8, T9]]) (Result[T1], Result[T2], Result[T3], Result[T4], Result[T5], Result[T6], Result[T7], Result[T8], Result[T9])

Unzip9 converts an optional of 9-tuple to optionals of each elements.

func Unzip10

func Unzip10[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10 any](o Result[tuple.Tuple10[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]]) (Result[T1], Result[T2], Result[T3], Result[T4], Result[T5], Result[T6], Result[T7], Result[T8], Result[T9], Result[T10])

Unzip10 converts an optional of 10-tuple to optionals of each elements.

func Unzip11

func Unzip11[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 any](o Result[tuple.Tuple11[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]]) (Result[T1], Result[T2], Result[T3], Result[T4], Result[T5], Result[T6], Result[T7], Result[T8], Result[T9], Result[T10], Result[T11])

Unzip11 converts an optional of 11-tuple to optionals of each elements.

func Unzip12

func Unzip12[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12 any](o Result[tuple.Tuple12[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]]) (Result[T1], Result[T2], Result[T3], Result[T4], Result[T5], Result[T6], Result[T7], Result[T8], Result[T9], Result[T10], Result[T11], Result[T12])

Unzip12 converts an optional of 12-tuple to optionals of each elements.

func Unzip13

func Unzip13[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13 any](o Result[tuple.Tuple13[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]]) (Result[T1], Result[T2], Result[T3], Result[T4], Result[T5], Result[T6], Result[T7], Result[T8], Result[T9], Result[T10], Result[T11], Result[T12], Result[T13])

Unzip13 converts an optional of 13-tuple to optionals of each elements.

func Unzip14

func Unzip14[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14 any](o Result[tuple.Tuple14[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]]) (Result[T1], Result[T2], Result[T3], Result[T4], Result[T5], Result[T6], Result[T7], Result[T8], Result[T9], Result[T10], Result[T11], Result[T12], Result[T13], Result[T14])

Unzip14 converts an optional of 14-tuple to optionals of each elements.

func Unzip15

func Unzip15[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15 any](o Result[tuple.Tuple15[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]]) (Result[T1], Result[T2], Result[T3], Result[T4], Result[T5], Result[T6], Result[T7], Result[T8], Result[T9], Result[T10], Result[T11], Result[T12], Result[T13], Result[T14], Result[T15])

Unzip15 converts an optional of 15-tuple to optionals of each elements.

func Unzip16

func Unzip16[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16 any](o Result[tuple.Tuple16[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]]) (Result[T1], Result[T2], Result[T3], Result[T4], Result[T5], Result[T6], Result[T7], Result[T8], Result[T9], Result[T10], Result[T11], Result[T12], Result[T13], Result[T14], Result[T15], Result[T16])

Unzip16 converts an optional of 16-tuple to optionals of each elements.

Types

type Result

type Result[T any] struct {
	// contains filtered or unexported fields
}

func Error

func Error[T any](err error) Result[T]

func Map

func Map[T, U any](r Result[T], f func(T) U) Result[U]

func New

func New[T any](v T, err error) Result[T]

func OK

func OK[T any](v T) Result[T]

func Zip2

func Zip2[T1, T2 any](o1 Result[T1], o2 Result[T2]) Result[tuple.Tuple2[T1, T2]]

Zip2 returns an optional of valid 2-tuples, if all of arguments are valid. Otherwise, one or more arguments are not valid, it returns none

func Zip3

func Zip3[T1, T2, T3 any](o1 Result[T1], o2 Result[T2], o3 Result[T3]) Result[tuple.Tuple3[T1, T2, T3]]

Zip3 returns an optional of valid 3-tuples, if all of arguments are valid. Otherwise, one or more arguments are not valid, it returns none

func Zip4

func Zip4[T1, T2, T3, T4 any](o1 Result[T1], o2 Result[T2], o3 Result[T3], o4 Result[T4]) Result[tuple.Tuple4[T1, T2, T3, T4]]

Zip4 returns an optional of valid 4-tuples, if all of arguments are valid. Otherwise, one or more arguments are not valid, it returns none

func Zip5

func Zip5[T1, T2, T3, T4, T5 any](o1 Result[T1], o2 Result[T2], o3 Result[T3], o4 Result[T4], o5 Result[T5]) Result[tuple.Tuple5[T1, T2, T3, T4, T5]]

Zip5 returns an optional of valid 5-tuples, if all of arguments are valid. Otherwise, one or more arguments are not valid, it returns none

func Zip6

func Zip6[T1, T2, T3, T4, T5, T6 any](o1 Result[T1], o2 Result[T2], o3 Result[T3], o4 Result[T4], o5 Result[T5], o6 Result[T6]) Result[tuple.Tuple6[T1, T2, T3, T4, T5, T6]]

Zip6 returns an optional of valid 6-tuples, if all of arguments are valid. Otherwise, one or more arguments are not valid, it returns none

func Zip7

func Zip7[T1, T2, T3, T4, T5, T6, T7 any](o1 Result[T1], o2 Result[T2], o3 Result[T3], o4 Result[T4], o5 Result[T5], o6 Result[T6], o7 Result[T7]) Result[tuple.Tuple7[T1, T2, T3, T4, T5, T6, T7]]

Zip7 returns an optional of valid 7-tuples, if all of arguments are valid. Otherwise, one or more arguments are not valid, it returns none

func Zip8

func Zip8[T1, T2, T3, T4, T5, T6, T7, T8 any](o1 Result[T1], o2 Result[T2], o3 Result[T3], o4 Result[T4], o5 Result[T5], o6 Result[T6], o7 Result[T7], o8 Result[T8]) Result[tuple.Tuple8[T1, T2, T3, T4, T5, T6, T7, T8]]

Zip8 returns an optional of valid 8-tuples, if all of arguments are valid. Otherwise, one or more arguments are not valid, it returns none

func Zip9

func Zip9[T1, T2, T3, T4, T5, T6, T7, T8, T9 any](o1 Result[T1], o2 Result[T2], o3 Result[T3], o4 Result[T4], o5 Result[T5], o6 Result[T6], o7 Result[T7], o8 Result[T8], o9 Result[T9]) Result[tuple.Tuple9[T1, T2, T3, T4, T5, T6, T7, T8, T9]]

Zip9 returns an optional of valid 9-tuples, if all of arguments are valid. Otherwise, one or more arguments are not valid, it returns none

func Zip10

func Zip10[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10 any](o1 Result[T1], o2 Result[T2], o3 Result[T3], o4 Result[T4], o5 Result[T5], o6 Result[T6], o7 Result[T7], o8 Result[T8], o9 Result[T9], o10 Result[T10]) Result[tuple.Tuple10[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]]

Zip10 returns an optional of valid 10-tuples, if all of arguments are valid. Otherwise, one or more arguments are not valid, it returns none

func Zip11

func Zip11[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 any](o1 Result[T1], o2 Result[T2], o3 Result[T3], o4 Result[T4], o5 Result[T5], o6 Result[T6], o7 Result[T7], o8 Result[T8], o9 Result[T9], o10 Result[T10], o11 Result[T11]) Result[tuple.Tuple11[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11]]

Zip11 returns an optional of valid 11-tuples, if all of arguments are valid. Otherwise, one or more arguments are not valid, it returns none

func Zip12

func Zip12[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12 any](o1 Result[T1], o2 Result[T2], o3 Result[T3], o4 Result[T4], o5 Result[T5], o6 Result[T6], o7 Result[T7], o8 Result[T8], o9 Result[T9], o10 Result[T10], o11 Result[T11], o12 Result[T12]) Result[tuple.Tuple12[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12]]

Zip12 returns an optional of valid 12-tuples, if all of arguments are valid. Otherwise, one or more arguments are not valid, it returns none

func Zip13

func Zip13[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13 any](o1 Result[T1], o2 Result[T2], o3 Result[T3], o4 Result[T4], o5 Result[T5], o6 Result[T6], o7 Result[T7], o8 Result[T8], o9 Result[T9], o10 Result[T10], o11 Result[T11], o12 Result[T12], o13 Result[T13]) Result[tuple.Tuple13[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13]]

Zip13 returns an optional of valid 13-tuples, if all of arguments are valid. Otherwise, one or more arguments are not valid, it returns none

func Zip14

func Zip14[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14 any](o1 Result[T1], o2 Result[T2], o3 Result[T3], o4 Result[T4], o5 Result[T5], o6 Result[T6], o7 Result[T7], o8 Result[T8], o9 Result[T9], o10 Result[T10], o11 Result[T11], o12 Result[T12], o13 Result[T13], o14 Result[T14]) Result[tuple.Tuple14[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14]]

Zip14 returns an optional of valid 14-tuples, if all of arguments are valid. Otherwise, one or more arguments are not valid, it returns none

func Zip15

func Zip15[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15 any](o1 Result[T1], o2 Result[T2], o3 Result[T3], o4 Result[T4], o5 Result[T5], o6 Result[T6], o7 Result[T7], o8 Result[T8], o9 Result[T9], o10 Result[T10], o11 Result[T11], o12 Result[T12], o13 Result[T13], o14 Result[T14], o15 Result[T15]) Result[tuple.Tuple15[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15]]

Zip15 returns an optional of valid 15-tuples, if all of arguments are valid. Otherwise, one or more arguments are not valid, it returns none

func Zip16

func Zip16[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16 any](o1 Result[T1], o2 Result[T2], o3 Result[T3], o4 Result[T4], o5 Result[T5], o6 Result[T6], o7 Result[T7], o8 Result[T8], o9 Result[T9], o10 Result[T10], o11 Result[T11], o12 Result[T12], o13 Result[T13], o14 Result[T14], o15 Result[T15], o16 Result[T16]) Result[tuple.Tuple16[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16]]

Zip16 returns an optional of valid 16-tuples, if all of arguments are valid. Otherwise, one or more arguments are not valid, it returns none

func (Result[T]) Err

func (v Result[T]) Err() error

func (Result[T]) Filter

func (v Result[T]) Filter(f func(T) bool) Result[T]

func (Result[T]) FilterFalse

func (v Result[T]) FilterFalse(f func(T) bool) Result[T]

func (Result[T]) Get

func (v Result[T]) Get() T

Jump to

Keyboard shortcuts

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