in reply to Help with hash/array data structure
Here, you're trying to use an array (qw(...)) where you can only put a scalar. What you want is an array reference:[qw(...)]my %packet_fields = ( $Idents{ Format_7 } => qw( ident flags
I'm not entirely clear on what you're hoping for here: $%packet_fields{ $ident} , but you can bet that $% is not going to be a useful combination of sigils. It's probably parsed as a special variable followed by a bareword and panic.
When in doubt, use the general form of dereferencing, which is the sigil you would use if you had an ordinary variable, then a curly-wrapped expression returning a rereference, and then any indexing you would use on an ordinary variable of the referenced type. You can nest these as deeply as you need to.
Check out perldoc perlreftut again.
|
|---|