481 |
|
|
482 |
#define PCRE_IMS (PCRE_CASELESS|PCRE_MULTILINE|PCRE_DOTALL) |
#define PCRE_IMS (PCRE_CASELESS|PCRE_MULTILINE|PCRE_DOTALL) |
483 |
|
|
484 |
/* Private options flags start at the most significant end of the four bytes. |
/* Private flags containing information about the compiled regex. They used to |
485 |
The public options defined in pcre.h start at the least significant end. Make |
live at the top end of the options word, but that got almost full, so now they |
486 |
sure they don't overlap! The bits are getting a bit scarce now -- when we run |
are in a 16-bit flags word. */ |
487 |
out, there is a dummy word in the structure that could be used for the private |
|
488 |
bits. */ |
#define PCRE_NOPARTIAL 0x0001 /* can't use partial with this regex */ |
489 |
|
#define PCRE_FIRSTSET 0x0002 /* first_byte is set */ |
490 |
#define PCRE_NOPARTIAL 0x80000000 /* can't use partial with this regex */ |
#define PCRE_REQCHSET 0x0004 /* req_byte is set */ |
491 |
#define PCRE_FIRSTSET 0x40000000 /* first_byte is set */ |
#define PCRE_STARTLINE 0x0008 /* start after \n for multiline */ |
492 |
#define PCRE_REQCHSET 0x20000000 /* req_byte is set */ |
#define PCRE_JCHANGED 0x0010 /* j option used in regex */ |
493 |
#define PCRE_STARTLINE 0x10000000 /* start after \n for multiline */ |
#define PCRE_HASCRORLF 0x0020 /* explicit \r or \n in pattern */ |
|
#define PCRE_JCHANGED 0x08000000 /* j option changes within regex */ |
|
|
#define PCRE_HASCRORLF 0x04000000 /* explicit \r or \n in pattern */ |
|
494 |
|
|
495 |
/* Options for the "extra" block produced by pcre_study(). */ |
/* Options for the "extra" block produced by pcre_study(). */ |
496 |
|
|
892 |
typedef struct real_pcre { |
typedef struct real_pcre { |
893 |
pcre_uint32 magic_number; |
pcre_uint32 magic_number; |
894 |
pcre_uint32 size; /* Total that was malloced */ |
pcre_uint32 size; /* Total that was malloced */ |
895 |
pcre_uint32 options; |
pcre_uint32 options; /* Public options */ |
896 |
pcre_uint32 dummy1; /* For future use, maybe */ |
pcre_uint16 flags; /* Private flags */ |
897 |
|
pcre_uint16 dummy1; /* For future use */ |
898 |
pcre_uint16 top_bracket; |
pcre_uint16 top_bracket; |
899 |
pcre_uint16 top_backref; |
pcre_uint16 top_backref; |
900 |
pcre_uint16 first_byte; |
pcre_uint16 first_byte; |
937 |
int top_backref; /* Maximum back reference */ |
int top_backref; /* Maximum back reference */ |
938 |
unsigned int backref_map; /* Bitmap of low back refs */ |
unsigned int backref_map; /* Bitmap of low back refs */ |
939 |
int external_options; /* External (initial) options */ |
int external_options; /* External (initial) options */ |
940 |
|
int external_flags; /* External flag bits to be set */ |
941 |
int req_varyopt; /* "After variable item" flag for reqbyte */ |
int req_varyopt; /* "After variable item" flag for reqbyte */ |
|
BOOL nopartial; /* Set TRUE if partial won't work */ |
|
942 |
BOOL had_accept; /* (*ACCEPT) encountered */ |
BOOL had_accept; /* (*ACCEPT) encountered */ |
943 |
int nltype; /* Newline type */ |
int nltype; /* Newline type */ |
944 |
int nllen; /* Newline string length */ |
int nllen; /* Newline string length */ |