25 декабря 2013 г., 18:45 пользователь Ilya Chesnokov <
[email protected]> написал:

>
> 25 декабря 2013 г., 17:13 пользователь Харпалёв Иван <
> [email protected]> написал:
>
> 2) Можно ли "определить  STDOUT  внутри пакета" снаружи  него?
>>
>> что-то вроде
>>
>> perl -E '
>> package P;
>> sub f{print 33};
>>
>>  package main;
>>  open my $out, "<out";
>>  *P::STDOUT=$out;    #или local или как-то ещё...
>>
>>  P->f()'
>>
>> только, чтобы работало.
>>
>> Кажется нужным для написания тестов всему, что срёт на экран.
>>
>>
> Передавать тому, что срет, дескриптор как параметр. По умолчанию пусть
> срет в STDOUT или куда надо.
> Также можно перед тестами делать my $OLD_FH = select $TEMP_FH;, а по
> окончании их - select $OLD_FH;
>
>
А еще см. perldoc perlopentut.

-- 
Best regards,
Ilya Chesnokov
-- 
Moscow.pm mailing list
[email protected] | http://moscow.pm.org

Ответить