Хочу передавать слайс интерфейсов Mini() T и возвращает слайс Т Примерно так но что-то не работает ``` type Mini[T any] interface { Mini() T } ``` func BulkMini[T any](items []Mini[T]) []T { result := make([]T, len(items)) for i, item := range items { result[i] = item.Mini() } return result }
ща, попробуем 🙂
type Minifier[T any] interface { Mini() T } func BulkMini[T any](items []Minifier[T]) []T { result := make([]T, len(items)) for i, item := range items { result[i] = item.Mini() } return result }
Спасибо большое, я также выше написал но не понимаю почему не работает (хотя метод есть) type Tag struct { ID string Name string } func (a Tag) Mini() proto.TagMini { return proto.TagMini{ ID: a.ID, Name: a.Name, } } type []Tag of a.Tags does not match []proto.Minifier[T] (cannot infer T)
Обсуждают сегодня