Поскольку расширения применяются ко всему типу (структура / класс). Для каждого экземпляра должно быть выделено хранилище ivar, и экземпляры, возможно, уже были созданы к моменту добавления расширения в систему. Информация о метатипах может быть обновлена; все существующие экземпляры (которые могут храниться в других экземплярах) не могут быть. Нет списка «всех существующих экземпляров», которые вы могли бы переместить и перераспределить (а также перераспределить их контейнеры).
Помните, что расширения могут применяться другими модулями, поэтому они могут динамически подключаться всякий раз, когда модуль загружается (что даже не обещается вообще во время запуска, не говоря уже о том, чтобы запускать код).