regexp.h revision 7c478bd95313f5f23a4c958a745db2134aa03244
/* regexp.h
*/
/*
* Definitions etc. for regexp(3) routines.
*
* Caveat: this is V8 regexp(3) [actually, a reimplementation thereof],
* not the System V one.
*/
struct regnode {
};
struct reg_substr_data;
struct reg_data;
typedef struct regexp {
struct reg_substr_data *substrs;
char *precomp; /* pre-compilation regular expression */
char *subbeg; /* saved or original string
so \digit works forever. */
Tainted information used by regexec? */
} regexp;
#define ROPT_ANCH_BOL 0x00001
#define ROPT_ANCH_MBOL 0x00002
#define ROPT_ANCH_SBOL 0x00004
#define ROPT_ANCH_GPOS 0x00008
#define ROPT_SKIP 0x00010
#define ROPT_GPOS_SEEN 0x00080
#define ROPT_CHECK_ALL 0x00100
#define ROPT_LOOKBEHIND_SEEN 0x00200
#define ROPT_EVAL_SEEN 0x00400
/* 0xf800 of reganch is used by PMf_COMPILETIME */
#define ROPT_UTF8 0x10000
#define ROPT_TAINTED_SEEN 0x80000
#define RE_USE_INTUIT_ML 0x0200000
#define REINT_AUTORITATIVE_ML 0x0800000
#define REINT_ONCE_ML 0x2000000
#define RE_INTUIT_ONECHAR 0x4000000
#define RE_INTUIT_TAIL 0x8000000
#define RX_MATCH_TAINTED_set(prog, t) ((t) \
? RX_MATCH_TAINTED_on(prog) \
#define RX_MATCH_COPIED_set(prog,t) ((t) \
? RX_MATCH_COPIED_on(prog) \
#define FBMcf_TAIL_DOLLAR 1
#define FBMcf_TAIL_DOLLARM 2
#define FBMcf_TAIL_Z 4
#define FBMcf_TAIL_z 8
#define FBMrf_MULTILINE 1
struct re_scream_pos_data_s;