Мимо Проходящий
> Не ругнется при даункастах i.(T),
это другая история вообще то, но даункаст же чекают if p,ok:=i.(T); ok{
p.foo()}
> не ругнется если у вас либа или "библиотечный" модуль, потому что имплементирующие типы нигде не используются
не понял)
ну дык чекай-не-чекай, ошибка даункаста, потому что тип внезапно перестал имплементировать интерфейс это не желаемое поведение
Ну вот вы написали библиотеку, где
type Heh interface {
Mda()
}
type MyLibraryType struct {
...
}
func (t MyLibraryType) Mda() {
...
}
А потом бац, и у
Heh.Mda
меняется сигнатура, а у
MyLibraryType.Mda
нет. А вы об этом не узнаете
Обкакулька