Let's try to figure it out.
Start with a simple example:
func sumOfSome(input int64) int64 {
var sum int64
for _, v := range input {
sum += v
}
return sum
}
But what to do if we need not only int64?
In this case, generics will help us.
type Number interface { float64 | int64 | int }
func sumOfSome[T Number](input []T) T { var sum T for _, v := range input { sum += v } return sum }
First of all we need create an interface with all types (float64, int64, int) which we whant to sum.