Changeset View
Changeset View
Standalone View
Standalone View
head/lib/libc/regex/regcomp.c
Show First 20 Lines • Show All 190 Lines • ▼ Show 20 Lines | |||||
#define INSERT(op, pos) doinsert(p, (sop)(op), HERE()-(pos)+1, pos) | #define INSERT(op, pos) doinsert(p, (sop)(op), HERE()-(pos)+1, pos) | ||||
#define AHEAD(pos) dofwd(p, pos, HERE()-(pos)) | #define AHEAD(pos) dofwd(p, pos, HERE()-(pos)) | ||||
#define ASTERN(sop, pos) EMIT(sop, HERE()-pos) | #define ASTERN(sop, pos) EMIT(sop, HERE()-pos) | ||||
#define HERE() (p->slen) | #define HERE() (p->slen) | ||||
#define THERE() (p->slen - 1) | #define THERE() (p->slen - 1) | ||||
#define THERETHERE() (p->slen - 2) | #define THERETHERE() (p->slen - 2) | ||||
#define DROP(n) (p->slen -= (n)) | #define DROP(n) (p->slen -= (n)) | ||||
#ifndef NDEBUG | |||||
static int never = 0; /* for use in asserts; shuts lint up */ | |||||
#else | |||||
#define never 0 /* some <assert.h>s have bugs too */ | |||||
#endif | |||||
/* Macro used by computejump()/computematchjump() */ | /* Macro used by computejump()/computematchjump() */ | ||||
#define MIN(a,b) ((a)<(b)?(a):(b)) | #define MIN(a,b) ((a)<(b)?(a):(b)) | ||||
/* | /* | ||||
- regcomp - interface for parser and compilation | - regcomp - interface for parser and compilation | ||||
= extern int regcomp(regex_t *, const char *, int); | = extern int regcomp(regex_t *, const char *, int); | ||||
= #define REG_BASIC 0000 | = #define REG_BASIC 0000 | ||||
= #define REG_EXTENDED 0001 | = #define REG_EXTENDED 0001 | ||||
▲ Show 20 Lines • Show All 1,775 Lines • Show Last 20 Lines |