X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=Plugin.h;h=e92549caa208681861ac08dfad523c7f32307abd;hb=1d575a50c1fb4c1caef29b609720b0781a231344;hp=109854ad2d518be15f5a45cbb9777247cd3d7bc1;hpb=06641849094f807d8762e328b5077e54b299f5e2;p=perl%2Fmodules%2Fre-engine-Plugin.git diff --git a/Plugin.h b/Plugin.h index 109854a..e92549c 100644 --- a/Plugin.h +++ b/Plugin.h @@ -4,10 +4,10 @@ /* re__engine__Plugin self; SELF_FROM_PPRIVATE(self,rx->pprivate) */ #define SELF_FROM_PPRIVATE(self, pprivate) \ - if (sv_isobject(pprivate)) { \ + if (sv_isobject(pprivate)) { \ SV * ref = SvRV((SV*)pprivate); \ - IV tmp = SvIV((SV*)ref); \ - self = INT2PTR(re__engine__Plugin,tmp); \ + IV tmp = SvIV((SV*)ref); \ + self = INT2PTR(re__engine__Plugin,tmp); \ } else { \ Perl_croak(aTHX_ "Not an object"); \ } @@ -25,6 +25,7 @@ EXTERN_C char * Plugin_intuit(pTHX_ REGEXP * const, SV *, char *, char *, U32, re_scream_pos_data *); EXTERN_C SV * Plugin_checkstr(pTHX_ REGEXP * const); EXTERN_C void Plugin_free(pTHX_ REGEXP * const); +EXTERN_C void * Plugin_dupe(pTHX_ REGEXP * const, CLONE_PARAMS *); EXTERN_C void Plugin_numbered_buff_FETCH(pTHX_ REGEXP * const, const I32, SV * const); EXTERN_C void Plugin_numbered_buff_STORE(pTHX_ REGEXP * const, @@ -77,10 +78,8 @@ typedef struct replug { /* The ->stash */ SV * stash; - /* - * Callbacks - */ - + /* Callbacks */ + SV * cb_exec; SV * cb_free; /* ->num_captures */