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!