Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Artem Chuprina                       2:5020/400     15 Apr 2002  11:23:22
 To : Yuri Mashkovtsev
 Subject : Re: Прототипы и методы объектов
 -------------------------------------------------------------------------------- 
 
 Здравствуй, Yuri Mashkovtsev.
 
 YM> Andrey Sapozhnikov <sapa@icb.chel.su> wrote:
 YM> > К сожалению нет. Как и при вызове  функций по ссылке.
 YM> >       Method calls are not influenced by prototypes either,
 YM> >       because the function to be called is indeterminate at com-
 YM> >       pile time, since the exact code called depends on inheri-
 YM> >       tance.
 
 YM>   Exact code called зависит еще и от run-time значений переменных,
 YM>   которые могут хранить как название класса, так и название метода.
 YM>   Мысль была следующая: коль скоро метод -- это суть подпрограмма,
 YM>   то прототипирование будет таки работать, хотя и не при
 
 YM>   $self->methodname(arg1, arg2)    # s/self/someobject/
 YM>   , а при
 YM>   Classname::methodname(arg1, arg2) 
 YM>   То есть прототипы проверить можно дублированием вызова метода
 YM>   объекта вызовом той же функции (который doesn't do inheritance).
 
 Hу, можно. Hо есть подозрение, что толку ноль. Ибо проверить вызовы этого
 метода все равно не получится. Получится проверить только заведомо корректный
 вызов функции изнутри метода, что как раз нафиг не нужно.
 
 YM>   У нутре же необходимо проверить первый аргумент на предмет того,
 YM>   не является ли он (blessed) reference. Типа:
 
 YM>   $invocant = shift;
 YM>   [do something difference] if UNIVERSAL::isa($invocant, $datatype)
 
 YM>   $datatype подставить по вкусу.
 
 А вот этого как раз делать не надо. А то информацию из $self достать будет
 невозможно.
 
 -- 
 Artem Chuprina
 Communiware.net
 RFC2822: <ran@ran.pp.ru>, FIDO: 2:5020/358.49, ICQ: 13038757
 --- ifmail v.2.15dev5
  * Origin: Leninsky 45 home network (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Прототипы и методы объектов   Andrei Baranov   13 Apr 2002 06:06:00 
 Re: Прототипы и методы объектов   Yuri Mashkovtsev   13 Apr 2002 08:02:33 
 Re: Прототипы и методы объектов   Andrey Sapozhnikov   14 Apr 2002 02:09:47 
 Re: Прототипы и методы объектов   Yuri Mashkovtsev   14 Apr 2002 19:42:19 
 Re: Прототипы и методы объектов   Andrey Sapozhnikov   15 Apr 2002 02:17:06 
 Re: Прототипы и методы объектов   Artem Chuprina   15 Apr 2002 11:23:22 
Архивное /ru.perl/14454b762fa5c.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional