Enable Henry Spencer's POSIX.2 compatible regular expression routines.
Disable is earlier V8-style routines.
This commit is contained in:
parent
8f83a67681
commit
9f78fc2f07
74
include/regex.h
Normal file
74
include/regex.h
Normal file
@ -0,0 +1,74 @@
|
||||
#ifndef _REGEX_H_
|
||||
#define _REGEX_H_ /* never again */
|
||||
/* ========= begin header generated by ./mkh ========= */
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/* === regex2.h === */
|
||||
typedef off_t regoff_t;
|
||||
typedef struct {
|
||||
int re_magic;
|
||||
size_t re_nsub; /* number of parenthesized subexpressions */
|
||||
const char *re_endp; /* end pointer for REG_PEND */
|
||||
struct re_guts *re_g; /* none of your business :-) */
|
||||
} regex_t;
|
||||
typedef struct {
|
||||
regoff_t rm_so; /* start of match */
|
||||
regoff_t rm_eo; /* end of match */
|
||||
} regmatch_t;
|
||||
|
||||
|
||||
/* === regcomp.c === */
|
||||
extern int regcomp __P((regex_t *preg, const char *pattern, int cflags));
|
||||
#define REG_BASIC 0000
|
||||
#define REG_EXTENDED 0001
|
||||
#define REG_ICASE 0002
|
||||
#define REG_NOSUB 0004
|
||||
#define REG_NEWLINE 0010
|
||||
#define REG_NOSPEC 0020
|
||||
#define REG_PEND 0040
|
||||
#define REG_DUMP 0200
|
||||
|
||||
|
||||
/* === regerror.c === */
|
||||
#define REG_NOMATCH 1
|
||||
#define REG_BADPAT 2
|
||||
#define REG_ECOLLATE 3
|
||||
#define REG_ECTYPE 4
|
||||
#define REG_EESCAPE 5
|
||||
#define REG_ESUBREG 6
|
||||
#define REG_EBRACK 7
|
||||
#define REG_EPAREN 8
|
||||
#define REG_EBRACE 9
|
||||
#define REG_BADBR 10
|
||||
#define REG_ERANGE 11
|
||||
#define REG_ESPACE 12
|
||||
#define REG_BADRPT 13
|
||||
#define REG_EMPTY 14
|
||||
#define REG_ASSERT 15
|
||||
#define REG_INVARG 16
|
||||
#define REG_ATOI 255 /* convert name to number (!) */
|
||||
#define REG_ITOA 0400 /* convert number to name (!) */
|
||||
extern size_t regerror __P((int errcode, const regex_t *preg, char *errbuf, size_t errbuf_size));
|
||||
static char *regatoi __P((const regex_t *preg, char *localbuf));
|
||||
|
||||
|
||||
/* === regexec.c === */
|
||||
extern int regexec __P((const regex_t *preg, const char *string, size_t nmatch, regmatch_t pmatch[], int eflags));
|
||||
#define REG_NOTBOL 00001
|
||||
#define REG_NOTEOL 00002
|
||||
#define REG_STARTEND 00004
|
||||
#define REG_TRACE 00400 /* tracing of execution */
|
||||
#define REG_LARGE 01000 /* force large representation */
|
||||
#define REG_BACKR 02000 /* force use of backref code */
|
||||
|
||||
|
||||
/* === regfree.c === */
|
||||
extern void regfree __P((regex_t *preg));
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
/* ========= end header generated by ./mkh ========= */
|
||||
#endif
|
@ -1,5 +1,5 @@
|
||||
# from: @(#)Makefile 5.2 (Berkeley) 3/5/91
|
||||
# $Id: Makefile,v 1.18 1993/11/05 22:43:47 cgd Exp $
|
||||
# $Id: Makefile,v 1.19 1993/11/11 01:18:03 jtc Exp $
|
||||
#
|
||||
# All library objects contain sccsid strings by default; they may be
|
||||
# excluded as a space-saving measure. To produce a library that does
|
||||
@ -33,6 +33,7 @@ AINC= -I${.CURDIR}/arch/${MACHINE}
|
||||
.include "${.CURDIR}/rpc/Makefile.inc"
|
||||
.include "${.CURDIR}/quad/Makefile.inc"
|
||||
.include "${.CURDIR}/dl/Makefile.inc"
|
||||
.include "${.CURDIR}/regex/Makefile.inc"
|
||||
|
||||
LIBKERN= /sys/lib/libkern
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user