mirror of
https://github.com/IBM/fp-go.git
synced 2025-06-23 00:27:49 +02:00
22 lines
291 B
Go
22 lines
291 B
Go
package option
|
|
|
|
import (
|
|
F "github.com/IBM/fp-go/function"
|
|
)
|
|
|
|
func toType[T any](a any) (T, bool) {
|
|
b, ok := a.(T)
|
|
return b, ok
|
|
}
|
|
|
|
func ToType[T any](src any) Option[T] {
|
|
return F.Pipe1(
|
|
src,
|
|
Optionize1(toType[T]),
|
|
)
|
|
}
|
|
|
|
func ToAny[T any](src T) Option[any] {
|
|
return Of(any(src))
|
|
}
|