[Moscow.pm] Вызов родительского деструктора из PerlXS
Nikita Aznauryan
nikita-aznaourian на yandex.ru
Пн Июл 19 08:10:49 PDT 2010
Если кому-то понадобится, все решается довольно просто.
Я добавил в XS функцию
void
ClassName::CallDestructor()
CODE:
delete THIS;
и убрал оттуда функцию DESTROY
и добавил деструктор в базовый класс таким образом:
sub DESTROY {
...
$self->CallDestructor() if $self->can("CallDestructor");
..
}
15.07.2010, 17:47, "Dmitry Karasik" <dmitry на karasik.eu.org>:
> On Thu, Jul 15, 2010 at 05:13:48PM +0400, Nikita Aznauryan wrote:
>
>> Вопрос , как из XS-ного деструктора вызывать родительский деструктор.
>
> спросите на perlmonks.org, я както с этим ковырялся, там играет и множественное
> наследие, и autoload, и новый mro, и черт ногу сломит, я даже не порекомендую
> ничего кроме как может самому порыть в сторону семейства функций
> Perl_gv_fetchmeth.
>
> --
> Sincerely,
> Dmitry Karasik
>
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
Подробная информация о списке рассылки Moscow-pm