GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
B::OPCheck(3) User Contributed Perl Documentation B::OPCheck(3)

B::OPCheck - PL_check hacks using Perl callbacks

version 0.32

    use B::Generate; # to change things

    use B::OPCheck entersub => check => sub {
        my $op = shift; # op has been checked by normal PL_check
        sodomize($op);
    };

    foo(); # this entersub will have the callback triggered

PL_check is an array indexed by opcode number (op_type) that contains function pointers invoked as the last stage of optree compilation, per op.

This hook is called in bottom up order, as the code is parsed and the optree is prepared.

This is how modules like autobox do their magic

This module provides an api for registering PL_check hooks lexically, allowing you to alter the behavior of certain ops using B::Generate from perl space.

check
Called after normal PL_checking. The return value is ignored.
after
Not yet implemented.

Allows you to return a processed B::OP. The op has been processed by PL_check already.

before
Not yet implemented.

Allows you to return a processed B::OP to be passed to normal PL_check.

replace
Not yet implemented.

Allows you to return a processed B::OP yourself, skipping normal PL_check handling completely.

Bugs may be submitted through the RT bug tracker <https://rt.cpan.org/Public/Dist/Display.html?Name=B-OPCheck> (or bug-B-OPCheck@rt.cpan.org <mailto:bug-B-OPCheck@rt.cpan.org>).

  • Chia-liang Kao <clkao@clkao.org>
  • יובל קוג'מן (Yuval Kogman) <nothingmuch@woobling.org>

  • Karen Etheridge <ether@cpan.org>
  • Florian Ragwitz <rafl@debian.org>
  • Alexandr Ciornii <alexchorny@gmail.com>

This software is copyright (c) 2009 by Chia-liang Kao, יובל קוג'מן (Yuval Kogman).

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

2016-07-03 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.