diff options
author | Rafael Garcia-Suarez <rgarciasuarez@gmail.com> | 2006-12-04 17:50:51 +0000 |
---|---|---|
committer | Rafael Garcia-Suarez <rgarciasuarez@gmail.com> | 2006-12-04 17:50:51 +0000 |
commit | 6d5c990f28c2a18264defef032a496e2e3dfb7cd (patch) | |
tree | 23cbcbd365bbc2e293a764976cdc9f1d9ec506af /regexp.h | |
parent | 3c6f95d1b67124c82147911f846eb1993443a39a (diff) | |
download | perl-6d5c990f28c2a18264defef032a496e2e3dfb7cd.tar.gz |
Better version of last patch, by Yves Orton.
Actually the regexp engine structure only needs
one compilation function hook.
p4raw-id: //depot/perl@29459
Diffstat (limited to 'regexp.h')
-rw-r--r-- | regexp.h | 19 |
1 files changed, 0 insertions, 19 deletions
@@ -84,24 +84,6 @@ typedef struct regexp { } regexp; -typedef struct regexp_internal { - regexp_paren_ofs *swap; /* Swap copy of *startp / *endp */ - U32 *offsets; /* offset annotations 20001228 MJD - data about mapping the program to the - string*/ - regnode *regstclass; /* Optional startclass as identified or constructed - by the optimiser */ - struct reg_data *data; /* Additional miscellaneous data used by the program. - Used to make it easier to clone and free arbitrary - data that the regops need. Often the ARG field of - a regop is an index into this structure */ - regnode program[1]; /* Unwarranted chumminess with compiler. */ -} regexp_internal; - -#define RXi_SET(x,y) (x)->pprivate = (void*)(y) -#define RXi_GET(x) ((regexp_internal *)((x)->pprivate)) -#define RXi_GET_DECL(r,ri) regexp_internal *ri = RXi_GET(r) - typedef struct re_scream_pos_data_s { char **scream_olds; /* match pos */ @@ -110,7 +92,6 @@ typedef struct re_scream_pos_data_s typedef struct regexp_engine { regexp* (*comp) (pTHX_ char* exp, char* xend, PMOP* pm); - regexp* (*compile) (pTHX_ char *exp, char *xend, PMOP *pm); I32 (*exec) (pTHX_ regexp* prog, char* stringarg, char* strend, char* strbeg, I32 minend, SV* screamer, void* data, U32 flags); |