Beefy Boxes and Bandwidth Generously Provided by pair Networks
Come for the quick hacks, stay for the epiphanies.
 
PerlMonks  

Re: backslash found where operator expected at

by BillKSmith (Monsignor)
on Apr 22, 2021 at 15:38 UTC ( [id://11131602]=note: print w/replies, xml ) Need Help??


in reply to backslash found where operator expected at

I like to use the Ternaries as suggested in the book "Perl Best Practices".
use strict; use warnings; sub print_response; my $response_code = 200; my $response_content = "All's well!"; use constant OK => 0; use constant BAD_INPUT => 1; use constant SERVICE_ACCESS_ERROR => 31; use constant SERVICE_EXECUTION_ERROR => 32; use constant SERVICE_ERROR => 30; use constant UNDEFINED => 255; $_ = $response_code; my $return_status = /200/ ? OK : /400/ ? BAD_INPUT : /403/ ? SERVICE_ACCESS_ERROR : /500/ ? SERVICE_EXECUTION_ERROR : /503/ ? SERVICE_ERROR : UNDEFINED ; print_response $response_content if $return_status == OK; exit $return_status;

The constants may be overkill, but if the names are important enough to include as comments, why not make them part of the actual perl code?

UPDATE -- Corrected sense of if statement

Bill

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others rifling through the Monastery: (2)
As of 2024-04-20 10:54 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found