]> git.sur5r.net Git - openldap/blob - contrib/tweb/regular_exp.h
Merge in all devel changes since 2.0-alpha2.
[openldap] / contrib / tweb / regular_exp.h
1 /*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
2 *                                                                          *
3 * regular_exp.h                                                            *
4 *                                                                          *
5 * Function:..Routine for TWEB                                              *
6 *                                                                          *
7 *                                                                          *
8 *                                                                          *
9 * Authors:...Dr. Kurt Spanier & Bernhard Winkler,                          *
10 *            Zentrum fuer Datenverarbeitung, Bereich Entwicklung           *
11 *            neuer Dienste, Universitaet Tuebingen, GERMANY                *
12 *                                                                          *
13 *                                       ZZZZZ  DDD    V   V                *
14 *            Creation date:                Z   D  D   V   V                *
15 *            January 20 1998              Z    D   D   V V                 *
16 *            Last modification:          Z     D  D    V V                 *
17 *            January 20 1998            ZZZZZ  DDD      V                  *
18 *                                                                          *
19 _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/
20 /*
21  * $Id: regular_exp.h,v 1.6 1999/09/10 15:01:19 zrnsk01 Exp $
22  *
23  */
24
25
26 #ifndef _REGULAR_EXP_
27 #define _REGULAR_EXP_
28
29 /*
30  * Definitions etc. for regexp(3) routines.
31  *
32  * Caveat:  this is V8 regexp(3) [actually, a reimplementation thereof],
33  * not the System V one.
34  */
35 #define NSUBEXP  10
36 typedef struct regexp {
37         char *startp[NSUBEXP];
38         char *endp[NSUBEXP];
39         char regstart;          /* Internal use only. */
40         char reganch;           /* Internal use only. */
41         char *regmust;          /* Internal use only. */
42         int regmlen;            /* Internal use only. */
43         char program[1];        /* Unwarranted chumminess with compiler. */
44 } regexp;
45
46 extern regexp *tweb_regcomp();
47 extern int tweb_regexec();
48 extern void tweb_regsub();
49 extern void tweb_regerror();
50 /*
51  * The first byte of the regexp internal "program" is actually this magic
52  * number; the start node begins in the second byte.
53  */
54 #define MAGIC   0234
55
56 #endif /* _REGULAR_EXP_ */