Как выполнить определенное действие, когда класс удален из системы в Dolphin

Я хотел бы выполнить определенное действие непосредственно перед / после удаления класса из системы (из SystemDictionary) - например, отменить регистрацию класса в определенном списке / словаре хорошо известных классов.

В Visualworks и Squeak/Pharo мне просто нужно определить сообщение #obsolete на стороне класса.

obsolete
    self unregisterSomething.
    ^super obsolete

Есть ли эквивалент в Dolphin Smalltalk?

1 ответ

Решение

Вы должны проверить метод #uninitializeBeforeRemove.

Если ваш класс - BankAccount, то вам нужно реализовать:

BankAccount class>>uninitializeBeforeRemove

(реализовать его на стороне класса).

Прочитайте комментарии в Классе >>uninitializeBeforeRemove

Другие вопросы по тегам