pattern.h revision 195941
1/* 2 * Copyright (C) 1984-2009 Mark Nudelman 3 * 4 * You may distribute under the terms of either the GNU General Public 5 * License or the Less License, as specified in the README file. 6 * 7 * For more information about less, or for information on how to 8 * contact the author, see the README file. 9 */ 10 11#if HAVE_POSIX_REGCOMP 12#include <regex.h> 13#ifdef REG_EXTENDED 14extern int less_is_more; 15#define REGCOMP_FLAG (less_is_more ? 0 : REG_EXTENDED) 16#else 17#define REGCOMP_FLAG 0 18#endif 19#define DEFINE_PATTERN(name) regex_t *name 20#define CLEAR_PATTERN(name) name = NULL 21#endif 22 23#if HAVE_PCRE 24#include <pcre.h> 25#define DEFINE_PATTERN(name) pcre *name 26#define CLEAR_PATTERN(name) name = NULL 27#endif 28 29#if HAVE_RE_COMP 30char *re_comp(); 31int re_exec(); 32#define DEFINE_PATTERN(name) int name 33#define CLEAR_PATTERN(name) name = 0 34#endif 35 36#if HAVE_REGCMP 37char *regcmp(); 38char *regex(); 39extern char *__loc1; 40#define DEFINE_PATTERN(name) char *name 41#define CLEAR_PATTERN(name) name = NULL 42#endif 43 44#if HAVE_V8_REGCOMP 45#include "regexp.h" 46#define DEFINE_PATTERN(name) struct regexp *name 47#define CLEAR_PATTERN(name) name = NULL 48#endif 49 50