gomus/pkg/utils.go

26 lines
408 B
Go

package gomus
import "log"
func mapList[T any, R any](l []T, f func(T) R) []R {
var c []R = []R{}
for _, item := range l {
c = append(c, f(item))
}
return c
}
func check(err error) {
if err != nil {
log.Fatal(err)
}
}
type Numeric interface {
float64
}
func MapFloatBetween[T Numeric](value, start1, stop1, start2, stop2 T) T {
return start2 + (value-start1)*(stop2-start2)/(stop1-start1)
}