Beefy Boxes and Bandwidth Generously Provided by pair Networks
We don't bite newbies here... much
 
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: (12)
As of 2015-07-01 21:18 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 (22 votes), past polls