Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses
 
PerlMonks  

Re: How Much Is Too Much (on one line of code)?

by Random_Walk (Parson)
on Jun 18, 2007 at 12:22 UTC ( #621770=note: print w/ replies, xml ) Need Help??


in reply to How Much Is Too Much (on one line of code)?

How about

my $country = uc $card->country || ''; # make sure it is UC and define +d $country = '' if $country eq 'GBR'; # blat the Brits

Same caveat about hard coded GBR still applies. It is still brief but I think the logic is clearer so divided. I am aware that will kill $country == 0 but as you are checking for gbr I suspect you do not have numeric countries

update

I missed the addition of [] around the country (sort of proves the danger of too much on one line) so my solution needs another line

$country = "[$country]" if $country;

or a re-write, I will put my thinking hat back on again !

update 2

with inspiration from perrin

my $def_country = 'GBR' my $country = uc $card->country || $def_country; # ensure UC & has a v +alue $country = $country eq 'GBR' ? '' : "[$country]" # blat brits, add [br +ackets]

Cheers,
R.

Pereant, qui ante nos nostra dixerunt!


Comment on Re: How Much Is Too Much (on one line of code)?
Select or Download Code
Re^2: How Much Is Too Much (on one line of code)?
by Anonymous Monk on Jun 19, 2007 at 00:10 UTC
    If $card->country returns 'Gbr', then your code will set $country to '', while the original code will set it to 'Gbr'.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (5)
As of 2014-09-24 05:32 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (246 votes), past polls