use strict;
-our($VERSION, $XS_VERSION, @ISA, @EXPORT_OK);
+our($VERSION, @ISA, @EXPORT_OK);
-$VERSION = "1.07";
-$XS_VERSION = "1.03";
+$VERSION = "1.15";
use Carp;
use Exporter ();
sub opdump (;$);
use subs @EXPORT_OK;
-XSLoader::load 'Opcode', $XS_VERSION;
+XSLoader::load 'Opcode', $VERSION;
_init_optags();
rv2av aassign aelem aelemfast aslice av2arylen
- rv2hv helem hslice each values keys exists delete
+ rv2hv helem hslice each values keys exists delete aeach akeys avalues
+ boolkeys
preinc i_preinc predec i_predec postinc i_postinc postdec i_postdec
int hex oct abs pow multiply i_multiply divide i_divide
cond_expr flip flop andassign orassign dorassign and or dor xor
- warn die lineseq nextstate scope enter leave setstate
+ warn die lineseq nextstate scope enter leave
rv2cv anoncode prototype
anonlist anonhash
-Note that despite the existance of this optag a memory resource attack
+Note that despite the existence of this optag a memory resource attack
may still be possible using only :base_core ops.
Disabling these ops is a I<very> heavy handed way to attempt to prevent
formline enterwrite leavewrite
- print sysread syswrite send recv
+ print say sysread syswrite send recv
eof tell seek sysseek
padsv padav padhv padany
+ once
+
rv2gv refgen srefgen ref
bless -- could be used to change ownership of objects (reblessing)
entertry leavetry -- can be used to 'hide' fatal errors
+ entergiven leavegiven
+ enterwhen leavewhen
+ break continue
+ smartmatch
+
custom -- where should this go
=item :base_math
These ops are related to multi-threading.
- lock threadsv
+ lock
=item :default
shmctl shmget shmread shmwrite
+=item :load
+
+This tag holds opcodes related to loading modules and getting information
+about calling environment and args.
+
+ require dofile
+ caller
+
=item :still_to_be_decided
chdir
tied -- can be used to access object implementing a tie
pack unpack -- can be used to create/use memory pointers
- entereval -- can be used to hide code from initial compile
- require dofile
+ hintseval -- constant op holding eval hints
- caller -- get info about calling environment and args
+ entereval -- can be used to hide code from initial compile
reset
=item :dangerous
This tag is simply a bucket for opcodes that are unlikely to be used via
-a tag name but need to be tagged for completness and documentation.
+a tag name but need to be tagged for completeness and documentation.
syscall dump chroot
-
=back
=head1 SEE ALSO
-ops(3) -- perl pragma interface to Opcode module.
+L<ops> -- perl pragma interface to Opcode module.
-Safe(3) -- Opcode and namespace limited execution compartments
+L<Safe> -- Opcode and namespace limited execution compartments
=head1 AUTHORS