Как бы я использовал хеш slice для инициализации хэша, хранящегося в структуре данных?

В предыдущем вопросе я спросил, как инициализировать Perl-хеш, используя слайсы. Это делается так:

my %hash = ();
my @fields = ('currency_symbol', 'currency_name');
my @array = ('BRL','Real');
@hash{@fields} = @array;

Теперь давайте представим более сложный хеш, и вот как он инициализируется:

my %hash = ();
my $iso = 'BR';
$hash->{$iso}->{currency_symbol} = 'BRL';
$hash->{$iso}->{currency_name} = 'Real';
print Dumper($hash);

Это приводит к следующему:

$VAR1 = {
          'BR' => {
                    'currency_symbol' => 'BRL',
                    'currency_name' => 'Real'
                  }
        };

Теперь вопрос будет: как инициализировать этот конкретный хеш, используя метод сплайсинга?

6
задан Axeman 24 August 2010 в 13:25
поделиться