ГА> Если в коде не было use utf8; или no utf8; то $::utf8::{AUTOLOAD} будет 
undef.

а если был no utf8?

то есть хочу такого:

use utf8;
use Package;

my $string = MyPackage::foo;  # - тут юникодная строка

{
    no utf8;
    my $string2 = MyPackage::foo; # - тут encoded utf8-строка
}


ГА> On 28 июля 2009 20:53:51 Dmitry E. Oboukhov wrote:
>> навеяло темой про CGI :)
>> 
>> по работе иногда приходится писать модули для тулзовин написанных во
>> времена царя гороха, которые без использования use utf8 работают и
>> если им тудыть эту директиву вставить то придется очень много
>> переделывать
>> 
>> ну и в общем допустим пишем мы пакет
>> 
>> package MyPackage;
>> sub foo
>> {
>>     ...
>>     return $string;
>> }
>> 
>> есть ли возможность модулю в котором есть директива use utf8 вернуть
>> utf-строку, а модулю (вообще говоря блоку) который не содержит оной
>> директивы вернуть простую байтовую строку?
>> 
>> то есть что-то в духе
>> 
>> sub foo
>> {
>>     ...
>>     return is_caller_utf8 ? $string : encode utf8 => $string;
>> }
>> --
>> ... mpd paused: Manowar - Call To Arms
>> 
>> . ''`.                               Dmitry E. Oboukhov
>> 
>> : :’  :   email: [email protected] jabber://[email protected]
>> 
>> `. `~’              GPGKey: 1024D / F8E26537 2006-11-21
>>   `- 1B23 D4F8 8EC0 D902 0555  E438 AB8C 00CF F8E2 6537
--
... mpd playing: Manowar - Hand Of Doom

. ''`.                               Dmitry E. Oboukhov
: :’  :   email: [email protected] jabber://[email protected]
`. `~’              GPGKey: 1024D / F8E26537 2006-11-21
  `- 1B23 D4F8 8EC0 D902 0555  E438 AB8C 00CF F8E2 6537

Attachment: signature.asc
Description: Digital signature

--
Moscow.pm mailing list
[email protected] | http://moscow.pm.org

Ответить