Все уже придумано - http://search.cpan.org/dist/Params-Util/
On May 26, 2011, at 12:01, Анатолий Шарифулин wrote: > Ааааааааа, это новый доклад для Андрея Шитова :) > > On Thursday, May 26, 2011, Олег Алексеенков <[email protected]> wrote: >> Andrei Fedorov <[email protected]> писал(а) в своём письме Wed, 25 May >> 2011 22:58:01 +0400: >> >> >> От: [email protected] >> [[email protected]] от имени Анатолий >> Шарифулин [[email protected]] >> Отправлено: 25 мая 2011 г. 19:49 >> Кому: Moscow.pm group >> Тема: Re: [Moscow.pm] false >> >> >> >> %{$ret||{}} - правильная запись, но лучше писать проще %$ret, зная что в >> $ret лежит всегда хеш. >> >> >> Кто сказал, что это правильно?! Такая "правильность" сугубо личное мнение! >> Если подразумевается, что в $ret могут быть не корректные для обработки >> данные (undef), то следует также учесть, что $ret может содержаться и скаляр: >> Can't use string ("oops") as a HASH ref while "strict refs" >> >> Почему нельзя просто проверить ref переменной $ret на значение HASH, и в >> зависимости от требований сделать next, return или $ret = {}. >> >> >> sub is_hash ($) { UNIVERSAL::isa( $_[0], 'HASH' ) } >> sub is_hash_size ($) { is_hash( $_[0] ) and %{ $_[0] } } >> >> next unless is_hash_size $ref; >> -- >> Moscow.pm mailing list >> [email protected] | http://moscow.pm.org >> > > -- > С уважением, > Анатолий Шарифулин. > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org -- Вячеслав Матюхин http://friendfeed.com/mmcleric http://berekuk.ru -- Moscow.pm mailing list [email protected] | http://moscow.pm.org
