45#define NEGATE_CLASS '^'
47#define OPTIMIZE_JUST_STAR
49#undef MATCH_TAR_PATTERN
54static int DoMatch(
register char *
text,
register char *
p)
61 if (*
text ==
'\0' && *
p !=
'*')
71 if (*
p ==
'\0')
return TRUE;
73 if ((matched = DoMatch(
text++,
p)) !=
FALSE)
return matched;
79 if (
p[1] ==
']' ||
p[1] ==
'-')
82 if (*
p ==
'-' &&
p[1] !=
']' ? *text <= *++p && *text >=
last : *
text == *
p)
84 if (matched == reverse)
return FALSE;
92#ifdef MATCH_TAR_PATTERN
104#ifdef OPTIMIZE_JUST_STAR
105 if (
p[0] ==
'*' &&
p[1] ==
'\0')
void p(char *, char *, int, int, int)
int wildmat(char *text, char *p)