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


Manual Reference Pages  -  B::HOOKS::OP::CHECK (3)

.ds Aq ’

NAME

B::Hooks::OP::Check - Wrap OP check callbacks

CONTENTS

SYNOPSIS



    # include "hook_op_check.h"

    STATIC OP *my_const_check_op (pTHX_ OP *op, void *user_data) {
        /* ... */
        return op;
    }

    STATIC hook_op_check_id my_hook_id = 0;

    void
    setup ()
        CODE:
            my_hook_id = hook_op_check (OP_CONST, my_const_check_op, NULL);

    void
    teardown ()
        CODE:
            hook_op_check_remove (OP_CONST, my_hook_id);



DESCRIPTION

This module provides a c api for XS modules to hook into the callbacks of PL_check.

ExtUtils::Depends is used to export all functions for other XS modules to use. Include the following in your Makefile.PL:



    my $pkg = ExtUtils::Depends->new(Your::XSModule, B::Hooks::OP::Check);
    WriteMakefile(
        ... # your normal makefile flags
        $pkg->get_makefile_vars,
    );



Your XS module can now include hook_op_check.h.

TYPES

    typedef OP *(*hook_op_check_cb) (pTHX_ OP *, void *);

Type that callbacks need to implement.

    typedef UV hook_op_check_id

Type to identify a callback.

FUNCTIONS

    hook_op_check_id hook_op_check (opcode type, hook_op_check_cb cb, void *user_data)

Register the callback cb to be called after the PL_check function for opcodes of the given type. user_data will be passed to the callback as the last argument. Returns an id that can be used to remove the callback later on.

    void *hook_op_check_remove (opcode type, hook_op_check_id id)

Remove the callback identified by id. Returns the userdata the callback had.

AUTHOR

Florian Ragwitz <rafl@debian.org>

COPYRIGHT AND LICENSE

Copyright (c) 2008 Florian Ragwitz

This module is free software.

You may distribute this code under the same terms as Perl itself.

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


perl v5.20.3 B::HOOKS::OP::CHECK (3) 2011-09-10

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