У структуры есть функция, которая принимает значение и возвращает себя
func (r Group) SetNum(num int) Group {
r.num = num
return r
}
как мне правильно описать эту функцию в интерфейсе?
Вариант 1 : возвращает структуру
type IGroup interface {
SetNum(num int) Group
}
Вариант 2 : возвращает интерфейс
type IGroup interface {
SetNum(num int) IGroup
}
полный код
type Group struct {
num int
}
func NewGroup(num int) Group {
return Group{
num: num
}
}
func (r Group) SetNum(num int) Group {
r.num = num
return r
}