В главе 9 мы гуляем по определению протокола FIXO
и расширений к обоим TreeNode
записи и TreeNode
типа. Мы показываем, что наращивание реализации FIXO
может быть выполнено динамически. Фактически, мы начинаем с записи TreeNode
, расширяем протокол FIXO
, а затем определяем тип TreeNode
и расширяем вместо него FIXO
. Хотя мы не меняем количество полей, мы сами меняем сам тип и после его расширения все вызовы через протокол FIXO
разрешают новый тип (нам также необходимо было переопределить расширение FIXO
на nil
, поскольку оно возвращало старую запись, на основе NodeType
.
вы бы скорее всего не сделать это в коде, который вы бы развернуть, но это полезный метод, когда экспериментировать. Попробуйте пройти через раздел FIXO и проверки типов, как вы идете.
Какой раздел/страница? – Kevin
@Kevin Page 191 - http://www.manning.com/fogus/Sample-Ch9.pdf :) –
Вы имеете в виду, как производится переопределение записи? – Ankur