Переопределение метода Go
У меня есть структура с большим количеством методов. Мне нужно переписать для другой структуры 1 метод. В цепочке вызовов методов, метод, который нужно переписать, находится в середине. Как мне это реализовать?
Вот пример чего у меня не получается, встроенный в структуру B метод caller() работает, но вызывает метод print() не из B, а из A:
type A struct{}
func (a *A) caller() {
a.print()
}
func (a *A) print() {
fmt.Println("a print")
}
type B struct {
A
}
func (b *B) print() {
fmt.Println("b print")
}
func main() {
var b B
b.caller()
}