Opt is a Go package for safe abstractions over optional values.
Inspired by the Option type in Rust and follows the same ideas and function signatures.
go get github.com/metafates/opt
package main
import (
"fmt"
"math"
"github.com/metafates/opt"
)
func divide(numerator, denominator float64) Opt[float64] {
if denominator == 0 {
return None[float64]()
}
return Some(numerator / denominator)
}
func main() {
result := divide(2, 3)
fmt.Println(result.UnwrapOr(math.MaxInt))
}