in reply to Re: How to call a Sub / Function with changing name
in thread How to call a Sub / Function with changing name
Allergy file looks like thismy %function = ( allergies => sub { print_allergies ( my $var) }, immunizations => sub { print "in immunizations\n" }, ); my $dir = 'input_files'; die "can't opendir $!" unless opendir DIR, $dir; while (defined(my $file = readdir DIR)) { do { # print "The directory and file are $dir/$file\n"; die "Can't open input file $!" unless open IN, "< $dir/$file"; use File::Glob (); while (defined($_ = glob(' IN '))) { # print "Hello $_"; } # print_allergies (*IN); $function{$file}->() if exists $function{$file}; }; } closedir DIR; sub print_allergies{ local (*FH) = @_; while (<FH>){ next if (/^#/); print $_ ; } }
# Input file for allergies # Date, Diagnosed By, Type, allergy, reaction,specifics 2009-05-16,Children's Hospital Boston,drugs,penicillin,Blue rash,This +only happens on weekends 2009-05-17,Boston Medical Group,drugs,Vitamin B,Rash on torso,This hap +pens after 9PM 2009-05-17,Children's Hospital,food,Diary,Upset stomach and gas, Happe +ns after drinking whole milk
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^3: How to call a Sub / Function with changing name
by ig (Vicar) on Oct 29, 2010 at 01:17 UTC | |
by kevyt (Scribe) on Oct 29, 2010 at 16:23 UTC |