[Moscow.pm] XS как переименовать модуль?

Ivan Petrov i.petro.77.00 на gmail.com
Ср Фев 2 13:54:40 PST 2011


> > PS: а кстати вот перловая инструкция вида
> >
> > (%hash)[$index]
> >
> > получается всегда полным перебором (от нуля до $index) выполняется? или я
> пропустил в документации какую-то функцию?
>
> не совсем понимаю, что Вы имели ввиду. Хеш с индексом - оксюморон какой-то
> Можно пример, для наглядности?
> --
>
ну я же привел пример - сериализация.

в простейшем виде так:

my $str = sprintf "{%s}", join ",", %hash;

если сюда вставить ескейпинг, затем добавить возможность прерваться в любом
месте этого процесса, поделать что-то другое, затем вернуться и продолжить,
то получается что обращаться с хешом как с массивом наиболее удобно. А если
считать что в перерыве кто-то может почитать этот хеш и неявно сбить
итераторы, то на итераторы и полагаться-то нельзя. что остается? индекс в
массиве (который из хеша получен)

ну и хеши всегда в массивы обращались и наоборот

%h = @array;
@array = %hash;

%hash = (%hash, %hash2);

и так далее.

на уровне перла средств манипуляции хешами как массивами полным полно, а вот
на уровне perl api я такой возможности не нашел. а поскольку я в XS новичок,
вот и спрашиваю :)
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20110202/9c0d1f85/attachment-0001.html>


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