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
In reply to Re: backslash found where operator expected at
by BillKSmith
in thread backslash found where operator expected at
by tokodekat
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |