Imported Upstream version 1.57.0
[platform/upstream/boost.git] / 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 #define NSUBEXP  10
11 typedef struct regexp {
12     char const * startp[ NSUBEXP ];
13     char const * endp[ NSUBEXP ];
14     char regstart;      /* Internal use only. */
15     char reganch;       /* Internal use only. */
16     char * regmust;     /* Internal use only. */
17     int regmlen;        /* Internal use only. */
18     char program[ 1 ];  /* Unwarranted chumminess with compiler. */
19 } regexp;
20
21
22 regexp * regcomp( char const * exp );
23 int regexec( regexp * prog, char const * string );
24 void regerror( char const * s );
25
26
27 /*
28  * The first byte of the regexp internal "program" is actually this magic
29  * number; the start node begins in the second byte.
30  */
31 #define MAGIC  0234
32
33 #endif
34