Я хотел бы определить объект в общей библиотеке,
type Common struct {
field_a string
custom interface{}
}
, где custom
, как ожидается, будет содержать дополнительные поля, которые пользователь этого общего объекта может определить в своем файле, например,
// module-1
type Mod1Customs struct {
abc string
}
Здесь я хотел бы иметь возможность установить Common.custom
на Mod1Customs
, чтобы я мог получить доступ к field_a
и abc
таким же образом из модуля-1. Я хотел бы сделать то же самое для других модулей, которые могут определять совершенно другую структуру для присваивания custom
.
Общая идея состоит в том, чтобы создать объект с предварительно определенными значениями по умолчанию и разрешить набор пользователи объекта могут добавлять свои собственные поля.
Возможно ли это?