devdaily home | apple | java | perl | unix | directory | blog

What this is

This file is included in the DevDaily.com "Perl Source Code Warehouse" project. The intent of this project is to help you "Learn Perl by Example" TM.

Other links

The source code

package ops;

our $VERSION = '1.00';

use Opcode qw(opmask_add opset invert_opset);

sub import {
    shift;
    # Not that unimport is the prefered form since import's don't
	# accumulate well owing to the 'only ever add opmask' rule.
	# E.g., perl -Mops=:set1 -Mops=:setb is unlikely to do as expected.
    opmask_add(invert_opset opset(@_)) if @_;
}

sub unimport {
    shift;
    opmask_add(opset(@_)) if @_;
}

1;

__END__

=head1 NAME

ops - Perl pragma to restrict unsafe operations when compiling

=head1 SYNOPSIS  

  perl -Mops=:default ...    # only allow reasonably safe operations

  perl -M-ops=system ...     # disable the 'system' opcode

=head1 DESCRIPTION

Since the ops pragma currently has an irreversible global effect, it is
only of significant practical use with the C<-M> option on the command line.

See the L module for information about opcodes, optags, opmasks
and important information about safety.

=head1 SEE ALSO

Opcode(3), Safe(3), perlrun(3)

=cut




Copyright 1998-2008 Alvin Alexander
All Rights Reserved.
 
devdaily.com is based in louisville, kentucky, and this web site is hosted by godaddy.com