Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things

(Guildenstern ) REx4: Win32::MemoryInfo

by Guildenstern (Deacon)
on Aug 31, 2000 at 20:02 UTC ( #30579=note: print w/replies, xml ) Need Help??

in reply to RE: RE: RE: Win32::MemoryInfo
in thread Win32::MemoryInfo

Okay. I see what you're saying about the parameters now. I was thinking of doing something like this:
my %meminfo = { TotalPhys=>0, AvailPhys=>0 }; MemoryStatus(\%meminfo,"KB");

but it seemed like too much work to make the user do, and setting hash values to 0 might be confusing. It would lessen the task of checking the parameter list, though, and we still have a hash reference which I agree is better than returning a specifically ordered list. Maybe I can include both options?

Negaterd character class uber alles!

Replies are listed 'Best First'.
RE (tilly) 5: Win32::MemoryInfo
by tilly (Archbishop) on Sep 01, 2000 at 21:57 UTC
    Silly trick:
    my %args = %default, @_; foreach my $arg (keys %args) { unless (exists $allowed{$arg}) { croak("Unrecognized argument '$arg' passed to MemoryStatus."); } }
    Just put all possible defaults in %default and the user can override any combination they want, and your %allowed check will catch most typos and misunderstandings of the API.

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (5)
As of 2021-10-27 17:41 GMT
Find Nodes?
    Voting Booth?
    My first memorable Perl project was:

    Results (94 votes). Check out past polls.