[Moscow.pm] use utf8 vs no use utf8

Dmitry E. Oboukhov unera на debian.org
Ср Июл 29 00:11:53 PDT 2009


ГА> Если в коде не было 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: unera на debian.org jabber://UNera@uvw.ru
>> 
>> `. `~’              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: unera на debian.org jabber://UNera@uvw.ru
`. `~’              GPGKey: 1024D / F8E26537 2006-11-21
  `- 1B23 D4F8 8EC0 D902 0555  E438 AB8C 00CF F8E2 6537
----------- следущая часть -----------
A non-text attachment was scrubbed...
Name: отсутствует
Type: application/pgp-signature
Size: 197 bytes
Desc: Digital signature
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20090729/5d007576/attachment-0001.bin>


Подробная информация о списке рассылки Moscow-pm