962 |
|
|
963 |
Save value into lookup. |
Save value into lookup. |
964 |
|
|
965 |
save_into_lookup($key,sub { |
save_into_lookup($database,$input,$key,sub { |
966 |
# code which produce one or more values |
# code which produce one or more values |
967 |
}); |
}); |
968 |
|
|
971 |
=cut |
=cut |
972 |
|
|
973 |
sub save_into_lookup { |
sub save_into_lookup { |
974 |
my ($k,$coderef) = @_; |
my ($database,$input,$key,$coderef) = @_; |
975 |
die "save_into_lookup needs key" unless defined($k); |
die "save_into_lookup needs database" unless defined($database); |
976 |
|
die "save_into_lookup needs input" unless defined($input); |
977 |
|
die "save_into_lookup needs key" unless defined($key); |
978 |
die "save_into_lookup needs CODE" unless ( defined($coderef) && ref($coderef) eq 'CODE' ); |
die "save_into_lookup needs CODE" unless ( defined($coderef) && ref($coderef) eq 'CODE' ); |
979 |
my $mfn = $rec->{'000'}->[0] || die "mfn not defined or zero"; |
my $mfn = $rec->{'000'}->[0] || die "mfn not defined or zero"; |
980 |
foreach my $v ( $coderef->() ) { |
foreach my $v ( $coderef->() ) { |
981 |
$lookup->{$k}->{$v}->{$mfn}++; |
$lookup->{$database}->{$input}->{$key}->{$v}->{$mfn}++; |
982 |
warn "# lookup $k $v $mfn saved\n" if ($debug > 1); |
warn "# saved lookup $database/$input/$key [$v] $mfn\n"; #if ($debug > 1); |
983 |
} |
} |
984 |
} |
} |
985 |
|
|