Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW
 
PerlMonks  

Re: Extracting code into a subroutine

by grizzley (Chaplain)
on Oct 31, 2012 at 09:59 UTC ( #1001633=note: print w/ replies, xml ) Need Help??


in reply to Extracting code into a subroutine

First write differences down. Then design subroutine arguments. Then desing subroutine. What are the differences?

  • List of field indexes.
  • grep regexp (NETPACKET, NETERROR)
  • grep regexp (Network, Busy, Memory)
  • what to do with arguments?
  • others?
Then subroutine arguments:
sub yoursub { my ($rangearrayref, $firstre, $secondre, $subref) = @_; ... } yoursub([2..7], 'NETPACKET', 'Network', \&transformNetpacketSub);
or hash style:
sub yoursub { my %args = @_; my ($rangearrayref, $firstre, $secondre, $subref) = ($args{-range}, +$args{-firstre}, $args{-secondre}, $args{-transformsub}); ... } yoursub(-range => [2..7], -firstre=>'NETPACKET', -secondre=>'Network', + ->transformsub=>\&transformNetpacketSub);
And then the only problem is to write proper transformNetpacketSub. I would do it like this:
sub transformNetpacketSub { my $str = shift; # do anything with string return $str; }


Comment on Re: Extracting code into a subroutine
Select or Download Code
Re^2: Extracting code into a subroutine
by cunningrat (Novice) on Oct 31, 2012 at 13:27 UTC
    Thanks to all who responded. It definitely gave me some ideas on how to proceed, which was all I needed.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1001633]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (10)
As of 2015-07-07 08:03 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (87 votes), past polls