summaryrefslogtreecommitdiff
path: root/regexp.h
diff options
context:
space:
mode:
authorRafael Garcia-Suarez <rgarciasuarez@gmail.com>2006-12-04 17:50:51 +0000
committerRafael Garcia-Suarez <rgarciasuarez@gmail.com>2006-12-04 17:50:51 +0000
commit6d5c990f28c2a18264defef032a496e2e3dfb7cd (patch)
tree23cbcbd365bbc2e293a764976cdc9f1d9ec506af /regexp.h
parent3c6f95d1b67124c82147911f846eb1993443a39a (diff)
downloadperl-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.h19
1 files changed, 0 insertions, 19 deletions
diff --git a/regexp.h b/regexp.h
index abc744c38d..85af91e1bb 100644
--- a/regexp.h
+++ b/regexp.h
@@ -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);