Как выполнить определенное действие, когда класс удален из системы в Dolphin
Я хотел бы выполнить определенное действие непосредственно перед / после удаления класса из системы (из SystemDictionary) - например, отменить регистрацию класса в определенном списке / словаре хорошо известных классов.
В Visualworks и Squeak/Pharo мне просто нужно определить сообщение #obsolete на стороне класса.
obsolete
self unregisterSomething.
^super obsolete
Есть ли эквивалент в Dolphin Smalltalk?
1 ответ
Решение
Вы должны проверить метод #uninitializeBeforeRemove.
Если ваш класс - BankAccount, то вам нужно реализовать:
BankAccount class>>uninitializeBeforeRemove
(реализовать его на стороне класса).
Прочитайте комментарии в Классе >>uninitializeBeforeRemove