| /* |
| * Definitions etc. for regexp(3) routines. |
| * |
| * Caveat: this is V8 regexp(3) [actually, a reimplementation thereof], |
| * not the System V one. |
| */ |
| |
| #ifndef REGEXP_H |
| #define REGEXP_H |
| |
| |
| /* |
| http://www.opensource.apple.com/darwinsource/10.3/expect-1/expect/expect.h , |
| which contains a version of this library, says: |
| |
| * |
| * NSUBEXP must be at least 10, and no greater than 117 or the parser |
| * will not work properly. |
| * |
| |
| However, it looks rather like this library is limited to 10. If you think |
| otherwise, let us know. |
| */ |
| |
| #define NSUBEXP 10 |
| typedef struct regexp { |
| char *startp[NSUBEXP]; |
| char *endp[NSUBEXP]; |
| char regstart; /* Internal use only. */ |
| char reganch; /* Internal use only. */ |
| char *regmust; /* Internal use only. */ |
| int regmlen; /* Internal use only. */ |
| char program[1]; /* Unwarranted chumminess with compiler. */ |
| } regexp; |
| |
| regexp * regcomp(char *exp, int *patternsize); |
| int regexec(regexp *prog, char *string); |
| void regsub(regexp *prog, char *source, char *dest); |
| void regerror(char *s); |
| |
| #endif |