I'm trying to return a hash of arrays from a module. I think I'm creating the hash correctly, but if I try to return it, I get a reference to an empty hash. What should I be doing?
open(FMT, "./formats/$filters_file") || die "Can't open $filters_f
+ile.\n";
while(<FMT>) {
chomp;
next if /^\*/; #comments line
$var_name = substr($_,2,5);
$var = substr($_,53);
$var =~ s/\s+$//g;
$var_name =~ s/(\$)|(\s+$)//g;
if ( exists $filters{$var_name} ) {
push @{ $filters{$var_name} }, $var;
} else {
$filters{$var_name} = [ $var ];
}
}
close FMT;
return %filters;