diff options
author | Thomas Roessler <roessler@does-not-exist.org> | 1998-06-08 09:16:03 +0000 |
---|---|---|
committer | Thomas Roessler <roessler@does-not-exist.org> | 1998-06-08 09:16:03 +0000 |
commit | 1a5381e07e97fe482c2b3a7c75f99938f0b105d4 (patch) | |
tree | b4fa4088bbbf5fc9217ee6f87ab60034175e6899 /mutt_regex.h |
Initial revision
Diffstat (limited to 'mutt_regex.h')
-rw-r--r-- | mutt_regex.h | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/mutt_regex.h b/mutt_regex.h new file mode 100644 index 00000000..27133bec --- /dev/null +++ b/mutt_regex.h @@ -0,0 +1,54 @@ +/* + * Copyright (C) 1996-8 Michael R. Elkins <me@cs.hmc.edu> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +/* + * A (more) generic interface to regular expression matching + */ + +#ifndef MUTT_REGEX_H +#define MUTT_REGEX_H + +#ifdef HAVE_REGCOMP +#include <regex.h> +#else +#include "rxposix.h" +#endif + +/* this is a non-standard option supported by Solaris 2.5.x which allows + * patterns of the form \<...\> + */ +#ifndef REG_WORDS +#define REG_WORDS 0 +#endif + +#define REGCOMP(X,Y,Z) regcomp(X, Y, REG_WORDS|REG_EXTENDED|(Z)) +#define REGEXEC(X,Y) regexec(&X, Y, (size_t)0, (regmatch_t *)0, (int)0) + +typedef struct +{ + char *pattern; /* printable version */ + regex_t *rx; /* compiled expression */ + int not; /* do not match */ +} REGEXP; + +WHERE REGEXP Alternates; +WHERE REGEXP Mask; +WHERE REGEXP QuoteRegexp; +WHERE REGEXP ReplyRegexp; + +#endif /* MUTT_REGEX_H */ |