а с принтом тоже хорошо-бы $handle указывать в {}
т.е.
print {$fh} "…"
On 30.12.2013, at 0:36, Анатолий Гришаев <[email protected]> wrote:
> Если всегда указывать дескриптор, то да вполне рабочий метод.
> Если нужно написать say_v1 "hello" вместе с say_v1 FOO "bar",
>
> То они уже плохо вместе уживаются:
> say_v1 FOO "bar" - ок
> say_v1 "foo" - ок
> say_v1 $fh "foo" -- уже не компилируется.
>
> А второй минус нужно лезть в IO::Handle, но кажется туда можно добавлять
> свои методы.
>
> 29.12.2013 18:58, Mons Anderson пишет:
>> можно.
>>
>> я так делал say для 5.8.8
>>
>> *IO::Handle::print_blablabla = sub { … };
>>
>> ...
>>
>> print_blablabla FILE "something to print";
>>
>> On 27.12.2013, at 21:45, Анатолий Гришаев <[email protected]> wrote:
>>
>>> 27.12.2013 21:00, Maxim Vuets пишет:
>>>>> print_utf FILE_UTF $foo;
>>>>> print_cp1251 FILE_UTF $foo;
>>>> Чего вы добиваетесь этим?
>>> Хотел максимально сохранить стиль исходного кода, чтобы print заменить на
>>> print_blabla простым search & replace.
>>>
>>> А второе чтобы можно было использовать одну сабу для метода и для вызова
>>> (иногда нужно);
>>>
>>> Жалко, что нельзя сделать корректно полностью.
>>> Но этот метод меня устроит.
>>>
>>> --
>>> Moscow.pm mailing list
>>> [email protected] | http://moscow.pm.org
>
> --
> Moscow.pm mailing list
> [email protected] | http://moscow.pm.org
--
Moscow.pm mailing list
[email protected] | http://moscow.pm.org