Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris

Re: How do you use the if pragma?

by LanX (Canon)
on Apr 08, 2013 at 21:07 UTC ( #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:

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)

Comment on Re: How do you use the if pragma?
Select or Download Code

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (14)
As of 2015-10-13 17:42 GMT
Find Nodes?
    Voting Booth?

    Does Humor Belong in Programming?

    Results (311 votes), past polls