X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=intrpvar.h;h=9f8e443f09b09821cb0430e24399a3dc82fd3bae;hb=8ff3e83ba54cff6118a4f9fd629260c21194f290;hp=fe3f07f5eb149a771ac71e86cb8354c86de76a41;hpb=f37b8c3fdce3e5c3394f23195b5fa687fad3bd7d;p=p5sagit%2Fp5-mst-13.2.git diff --git a/intrpvar.h b/intrpvar.h index fe3f07f..9f8e443 100644 --- a/intrpvar.h +++ b/intrpvar.h @@ -170,7 +170,19 @@ PERLVARA(Icolors,6, char *) /* from regcomp.c */ PERLVARI(Ipeepp, peep_t, MEMBER_TO_FPTR(Perl_peep)) /* Pointer to peephole optimizer */ -PERLVARI(Iopfreehook, Perl_check_t, 0) /* op_free() hook */ +/* +=for apidoc Amn|Perl_ophook_t|PL_opfreehook + +When non-C, the function pointed by this variable will be called each time an OP is freed with the corresponding OP as the argument. +This allows extensions to free any extra attribute they have locally attached to an OP. +It is also assured to first fire for the parent OP and then for its kids. + +When you replace this variable, it is considered a good practice to store the possibly previously installed hook and that you recall it inside your own. + +=cut +*/ + +PERLVARI(Iopfreehook, Perl_ophook_t, 0) /* op_free() hook */ PERLVARI(Imaxscream, I32, -1) PERLVARI(Ireginterp_cnt,I32, 0) /* Whether "Regexp" was interpolated. */