2014-12-10 2 views
1

У меня есть объект A в Smalltalk, и я хочу переопределить метод, специфичный для метода, который компилируется в поведении.Переопределение метода в поведении -smalltalk-

Моя цель - настроить метод компиляции путем добавления утверждений перед компиляцией кода.
Я знаю, что компиляция найдена в классе A (вплоть до поведений), но как я могу ее использовать?

Я пробовал много способов не работает, последнее, что я сделал это: я определил метод:

компиляция: код самостоятельно класс компиляции: код. «это не работает, это говорит мне, что сообщение не понято»

как я могу это сделать?

+0

Дубликат https://stackoverflow.com/questions/27386061/overriding-compile-method-in-squeak – Uko

ответ

2

[Pharo] Попробуйте переопределить метод #compile: классифицировано: withStamp: уведомление: на стороне класса вашего класса. В этой новой реализации комбинируйте код утверждения с первым параметром (который является исходным кодом, который вы собираетесь скомпилировать), а затем делегируйте супер с измененным кодом.

Смежные вопросы