]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/tools/build/src/engine/regexp.h
bbac95eeba5782c9b6869fd8c3cd18ed1d2b0bed
[ceph.git] / ceph / src / boost / tools / build / src / engine / regexp.h
1 /*
2 * Definitions etc. for regexp(3) routines.
3 *
4 * Caveat: this is V8 regexp(3) [actually, a reimplementation thereof],
5 * not the System V one.
6 */
7 #ifndef REGEXP_DWA20011023_H
8 #define REGEXP_DWA20011023_H
9
10 #include "config.h"
11
12 #define NSUBEXP 10
13 typedef struct regexp {
14 char const * startp[ NSUBEXP ];
15 char const * endp[ NSUBEXP ];
16 char regstart; /* Internal use only. */
17 char reganch; /* Internal use only. */
18 char * regmust; /* Internal use only. */
19 int32_t regmlen; /* Internal use only. */
20 char program[ 1 ]; /* Unwarranted chumminess with compiler. */
21 } regexp;
22
23
24 regexp * regcomp( char const * exp );
25 int32_t regexec( regexp * prog, char const * string );
26 void regerror( char const * s );
27
28
29 /*
30 * The first byte of the regexp internal "program" is actually this magic
31 * number; the start node begins in the second byte.
32 */
33 #define MAGIC 0234
34
35 #endif
36