1
0
mirror of https://github.com/IBM/fp-go.git synced 2025-06-23 00:27:49 +02:00
Files
fp-go/io/generic/logging.go

27 lines
510 B
Go
Raw Normal View History

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)
})
}
}