Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
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 romping around the Monastery: (6)
As of 2014-07-26 05:52 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (175 votes), past polls