[–] bccdee 1d ago ↗ A fun quirk about Go that nobody tells you about is that a function with multiple return values can supply multiple arguments. So this: func must[T any](t T, err error) T { if err != nil { panic(err) } return t } func makeInt(i int) (int, error) { if i == 0 { return 0, fmt.Errorf("not zero") } return i, nil } func main() { i := must(makeInt(3)) } is totally legal & works exactly how you'd expect it to!
1 comment
[ 1418 ms ] story [ 113 ms ] thread