Annotation of src/usr.bin/less/regexp.h, Revision 1.1.1.1
1.1 etheisen 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:
8: #ifndef _REGEXP
9: #define _REGEXP 1
10:
11: #define NSUBEXP 10
12: typedef struct regexp {
13: char *startp[NSUBEXP];
14: char *endp[NSUBEXP];
15: char regstart; /* Internal use only. */
16: char reganch; /* Internal use only. */
17: char *regmust; /* Internal use only. */
18: int regmlen; /* Internal use only. */
19: char program[1]; /* Unwarranted chumminess with compiler. */
20: } regexp;
21:
22: #if defined(__STDC__) || defined(__cplusplus)
23: # define _ANSI_ARGS_(x) x
24: #else
25: # define _ANSI_ARGS_(x) ()
26: #endif
27:
28: extern regexp *regcomp _ANSI_ARGS_((char *exp));
29: extern int regexec _ANSI_ARGS_((regexp *prog, char *string));
30: extern void regsub _ANSI_ARGS_((regexp *prog, char *source, char *dest));
31: extern void regerror _ANSI_ARGS_((char *msg));
32:
33: #endif /* REGEXP */