Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

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:

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)


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

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (10)
As of 2015-07-04 14:14 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 (60 votes), past polls