Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

Re: How do you use the if pragma?

by LanX (Saint)
on Apr 08, 2013 at 21:07 UTC ( [id://1027598]=note: print w/replies, xml ) Need Help??


in reply to How do you use the if pragma?

> How would I use it?

how to use super search to find code:

search 'use if' with single quote as string separator (click search !!!)

> Since this is a pragma, it's executed before anything in my code, so I can't use variables or constants as a condition:

constants
Wrong, since use constant is a pragma itself, and of course order matters.

see this example of defining a constant VERBOSE to control following use statements.

--> Re: Redefining Imported Subs: of scope and no

update: variables

But TIMTOWTDI, see BEGIN for a dynamic way to define variables at start up.

use strict; use warnings; my $VERBOSE; BEGIN {$VERBOSE=1 } use if $VERBOSE, feature => "say"; say "bla";
update: functions

or even better define a sub, functions are evaluated at first compilation pass.

The following code will die in one out of two cases!

(just in case if you wanna leave your employer a hard to debug problem =)

use strict; use warnings; sub VERBOSE { int rand 2} use if VERBOSE, feature => "say"; say "bla";

Cheers Rolf

( addicted to the Perl Programming Language)

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others having a coffee break in the Monastery: (4)
As of 2024-04-25 07:54 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found