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


ru.cgi.perl

 
 - RU.CGI.PERL ------------------------------------------------------------------
 From : Artem Chuprina                       2:5020/400     29 Aug 2006  14:48:47
 To : Dmitry Derenok
 Subject : Re: require from eval
 -------------------------------------------------------------------------------- 
 
 Dmitry Derenok -> All  @ Tue, 29 Aug 2006 03:21:02 +0000 (UTC):
  DD> Вот такая простая конструкция:
  DD> eval ("require $module;") || die "Error load
  DD> module! ".$@;
 
  DD> Hо если я подключаю с помощью данной конструкции
  DD> модуль, в котором
  DD> имя пакета (package bla-bla-bla;) не совпадает с
  DD> именем файла в 
  DD> котором код данного пакета, то никаких
  DD> варнингов-эксепшинов не выдается,
  DD> модуль нормально загружается.
  DD> Как бы эту ситуацию победить?
 
 Проверить после загрузки, появилось ли имя модуля среди ключей %INC.
 Правда, испортить тот модуль, который раньше носил имя, указанное в
 package, оно уже успеет.  Так что если вышенаписанный die потом ловится,
 то надо перед require прикапывать старый %INC, и в случае неудачи
 проверки искать изменения и перегружать файлы вручную.
 
 -- 
 Artem Chuprina
 RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru
 
 Творить - не делать! (c)Элхэ Hиеннах
 --- ifmail v.2.15dev5.3
  * Origin: Leninsky 45 home network (2:5020/400)
 
 

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

 Тема:    Автор:    Дата:  
 require from eval   Dmitry Derenok   29 Aug 2006 07:21:02 
 Re: require from eval   Artem Chuprina   29 Aug 2006 14:48:47 
Архивное /ru.cgi.perl/256069ccf3d39.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional