File: reg.h

package info (click to toggle)
ted 2.11-1
  • links: PTS
  • area: main
  • in suites: woody
  • size: 11,064 kB
  • ctags: 13,935
  • sloc: ansic: 120,446; makefile: 7,469; sh: 253
file content (36 lines) | stat: -rw-r--r-- 1,000 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#   ifndef	REG_H
#   define	REG_H

/*
 * Definitions etc. for regexp(3) routines.
 *
 * Caveat:  this is V8 regexp(3) [actually, a reimplementation thereof],
 * not the System V one.
 */

#define NSUBEXP  10
typedef struct regProg
    {
    unsigned char *	rpStartp[NSUBEXP];
    unsigned char *	rpEndp[NSUBEXP];
    char		regstart;		/* Internal use only. */
    char		reganch;		/* Internal use only. */
    unsigned char *	rpRegmust;		/* Internal use only. */
    int			regmlen;		/* Internal use only. */
    unsigned char	rpProgram[1];		/* Unwarranted chumminess */
						/* with compiler. */
    } regProg;

extern regProg *regCompile( const unsigned char * );
extern regProg *regCompileEscaped( const unsigned char * );
extern void regSubstitute( regProg *, char *, char * );
extern void regErrorMessage( char * );

extern int regFindLeftToRight(	regProg *	prog,
				unsigned char *	string );

extern int regFindRightToLeft(	regProg *	prog,
				unsigned char *	string,
				int		len );

#   endif