| regex.h | | regex.h | |
| /* | | /* | |
| regex.h - POSIX.2 compatible regexp interface and TRE extensions | | regex.h - POSIX.2 compatible regexp interface and TRE extensions | |
| | | | |
|
| Copyright (C) 2001-2004 Ville Laurikari <vl@iki.fi>. | | Copyright (c) 2001-2006 Ville Laurikari <vl@iki.fi>. | |
| | | | |
|
| This program is free software; you can redistribute it and/or modify | | This library is free software; you can redistribute it and/or | |
| it under the terms of the GNU General Public License version 2 (June | | modify it under the terms of the GNU Lesser General Public | |
| 1991) as published by the Free Software Foundation. | | License as published by the Free Software Foundation; either | |
| | | version 2.1 of the License, or (at your option) any later version. | |
| | | | |
|
| This program is distributed in the hope that it will be useful, | | This library is distributed in the hope that it will be useful, | |
| but WITHOUT ANY WARRANTY; without even the implied warranty of | | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
|
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
| GNU General Public License for more details. | | Lesser General Public License for more details. | |
| | | | |
|
| You should have received a copy of the GNU General Public License | | You should have received a copy of the GNU Lesser General Public | |
| along with this program; if not, write to the Free Software | | License along with this library; if not, write to the Free Software | |
| Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 US | |
| | | A | |
| | | | |
| */ | | */ | |
| | | | |
| #ifndef TRE_REGEX_H | | #ifndef TRE_REGEX_H | |
| #define TRE_REGEX_H 1 | | #define TRE_REGEX_H 1 | |
| | | | |
| #include "tre-config.h" | | #include "tre-config.h" | |
| | | | |
| #ifdef HAVE_SYS_TYPES_H | | #ifdef HAVE_SYS_TYPES_H | |
| #include <sys/types.h> | | #include <sys/types.h> | |
| | | | |
| skipping to change at line 59 | | skipping to change at line 60 | |
| | | | |
| #ifndef HAVE_REG_ERRCODE_T | | #ifndef HAVE_REG_ERRCODE_T | |
| typedef int reg_errcode_t; | | typedef int reg_errcode_t; | |
| #endif /* !HAVE_REG_ERRCODE_T */ | | #endif /* !HAVE_REG_ERRCODE_T */ | |
| | | | |
| #if !defined(REG_NOSPEC) && !defined(REG_LITERAL) | | #if !defined(REG_NOSPEC) && !defined(REG_LITERAL) | |
| #define REG_LITERAL 0x1000 | | #define REG_LITERAL 0x1000 | |
| #endif | | #endif | |
| | | | |
| /* Extra regcomp() flags. */ | | /* Extra regcomp() flags. */ | |
|
| | | #define REG_BASIC 0 | |
| #define REG_RIGHT_ASSOC (REG_LITERAL << 1) | | #define REG_RIGHT_ASSOC (REG_LITERAL << 1) | |
|
| | | #define REG_UNGREEDY (REG_RIGHT_ASSOC << 1) | |
| | | | |
| /* Extra regexec() flags. */ | | /* Extra regexec() flags. */ | |
| #define REG_APPROX_MATCHER 0x1000 | | #define REG_APPROX_MATCHER 0x1000 | |
| #define REG_BACKTRACKING_MATCHER (REG_APPROX_MATCHER << 1) | | #define REG_BACKTRACKING_MATCHER (REG_APPROX_MATCHER << 1) | |
| | | | |
| #else /* !TRE_USE_SYSTEM_REGEX_H */ | | #else /* !TRE_USE_SYSTEM_REGEX_H */ | |
| | | | |
| /* If the we're not using system regex.h, we need to define the | | /* If the we're not using system regex.h, we need to define the | |
| structs and enums ourselves. */ | | structs and enums ourselves. */ | |
| | | | |
| | | | |
| skipping to change at line 110 | | skipping to change at line 113 | |
| /* POSIX regcomp() flags. */ | | /* POSIX regcomp() flags. */ | |
| #define REG_EXTENDED 1 | | #define REG_EXTENDED 1 | |
| #define REG_ICASE (REG_EXTENDED << 1) | | #define REG_ICASE (REG_EXTENDED << 1) | |
| #define REG_NEWLINE (REG_ICASE << 1) | | #define REG_NEWLINE (REG_ICASE << 1) | |
| #define REG_NOSUB (REG_NEWLINE << 1) | | #define REG_NOSUB (REG_NEWLINE << 1) | |
| | | | |
| /* Extra regcomp() flags. */ | | /* Extra regcomp() flags. */ | |
| #define REG_BASIC 0 | | #define REG_BASIC 0 | |
| #define REG_LITERAL (REG_NOSUB << 1) | | #define REG_LITERAL (REG_NOSUB << 1) | |
| #define REG_RIGHT_ASSOC (REG_LITERAL << 1) | | #define REG_RIGHT_ASSOC (REG_LITERAL << 1) | |
|
| | | #define REG_UNGREEDY (REG_RIGHT_ASSOC << 1) | |
| | | | |
| /* POSIX regexec() flags. */ | | /* POSIX regexec() flags. */ | |
| #define REG_NOTBOL 1 | | #define REG_NOTBOL 1 | |
| #define REG_NOTEOL (REG_NOTBOL << 1) | | #define REG_NOTEOL (REG_NOTBOL << 1) | |
| | | | |
| /* Extra regexec() flags. */ | | /* Extra regexec() flags. */ | |
| #define REG_APPROX_MATCHER (REG_NOTEOL << 1) | | #define REG_APPROX_MATCHER (REG_NOTEOL << 1) | |
| #define REG_BACKTRACKING_MATCHER (REG_APPROX_MATCHER << 1) | | #define REG_BACKTRACKING_MATCHER (REG_APPROX_MATCHER << 1) | |
| | | | |
| #endif /* !TRE_USE_SYSTEM_REGEX_H */ | | #endif /* !TRE_USE_SYSTEM_REGEX_H */ | |
| | | | |
End of changes. 8 change blocks. |
| 10 lines changed or deleted | | 15 lines changed or added | |
|