mirror of
https://github.com/IBM/fp-go.git
synced 2025-06-23 00:27:49 +02:00
27 lines
510 B
Go
27 lines
510 B
Go
package generic
|
|
|
|
import (
|
|
"log"
|
|
|
|
Logging "github.com/IBM/fp-go/logging"
|
|
)
|
|
|
|
func Logger[GA ~func() any, A any](loggers ...*log.Logger) func(string) func(A) GA {
|
|
_, right := Logging.LoggingCallbacks(loggers...)
|
|
return func(prefix string) func(A) GA {
|
|
return func(a A) GA {
|
|
return FromImpure[GA](func() {
|
|
right("%s: %v", prefix, a)
|
|
})
|
|
}
|
|
}
|
|
}
|
|
|
|
func Logf[GA ~func() any, A any](prefix string) func(A) GA {
|
|
return func(a A) GA {
|
|
return FromImpure[GA](func() {
|
|
log.Printf(prefix, a)
|
|
})
|
|
}
|
|
}
|