diff options
author | Yves Orton <demerphq@gmail.com> | 2006-11-23 20:21:38 +0100 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2006-11-23 23:17:44 +0000 |
commit | f8fc2ecf2fa95aa27fcef856e4853807c5dec00e (patch) | |
tree | d71eb6bfc36e0a072447b4d629dadc0e40ba9708 /regexp.h | |
parent | 64f1630259715aa5333fbbfab877f74d53f5b321 (diff) | |
download | perl-f8fc2ecf2fa95aa27fcef856e4853807c5dec00e.tar.gz |
Re: [PATCH] Cleanup regexp flags and structure
Message-ID: <9b18b3110611231021l561a9cb4te985db3f0648e097@mail.gmail.com>
Attached patch completes the splitting out of the core from the regexp
internal data.
p4raw-id: //depot/perl@29368
Diffstat (limited to 'regexp.h')
-rw-r--r-- | regexp.h | 9 |
1 files changed, 8 insertions, 1 deletions
@@ -82,6 +82,10 @@ typedef struct regexp { void *pprivate; /* Data private to the regex engine which created this object. Perl will never mess with this member at all. */ +} 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 @@ -93,8 +97,11 @@ typedef struct regexp { 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; +} 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 { |