View on
MetaCPAN is shutting down
For details read Perl NOC. After June 25th this page will redirect to
Chris Marshall > OpenGL > pgopogl.xs


Annotate this POD


View/Report Bugs


Various useful utilities defined in PGOpogl.xs.


call the boot code of a module by symbol rather than by name.

in a perl extension which uses several xs files but only one pm, you need to bootstrap the other xs files in order to get their functions exported to perl. if the file has MODULE = Foo::Bar, the boot symbol would be boot_Foo__Bar.

void _pgopogl_call_XS (pTHX_ void (*subaddr) (pTHX_ CV *), CV * cv, SV ** mark);

never use this function directly. see PGOPOGLL_CALL_BOOT.

for the curious, this calls a perl sub by function pointer rather than by name; call_sv requires that the xsub already be registered, but we need this to call a function which will register xsubs. this is an evil hack and should not be used outside of the PGOPOGL_CALL_BOOT macro. it's implemented as a function to avoid code size bloat, and exported so that extension modules can pull the same trick.

syntax highlighting: