Edit File by line
/home/barbar84/public_h.../wp-conte.../plugins/sujqvwi/ShExBy/shex_roo.../usr/include
File: pcreposix.h
/*************************************************
[0] Fix | Delete
* Perl-Compatible Regular Expressions *
[1] Fix | Delete
*************************************************/
[2] Fix | Delete
[3] Fix | Delete
#ifndef _PCREPOSIX_H
[4] Fix | Delete
#define _PCREPOSIX_H
[5] Fix | Delete
[6] Fix | Delete
/* This is the header for the POSIX wrapper interface to the PCRE Perl-
[7] Fix | Delete
Compatible Regular Expression library. It defines the things POSIX says should
[8] Fix | Delete
be there. I hope.
[9] Fix | Delete
[10] Fix | Delete
Copyright (c) 1997-2012 University of Cambridge
[11] Fix | Delete
[12] Fix | Delete
-----------------------------------------------------------------------------
[13] Fix | Delete
Redistribution and use in source and binary forms, with or without
[14] Fix | Delete
modification, are permitted provided that the following conditions are met:
[15] Fix | Delete
[16] Fix | Delete
* Redistributions of source code must retain the above copyright notice,
[17] Fix | Delete
this list of conditions and the following disclaimer.
[18] Fix | Delete
[19] Fix | Delete
* Redistributions in binary form must reproduce the above copyright
[20] Fix | Delete
notice, this list of conditions and the following disclaimer in the
[21] Fix | Delete
documentation and/or other materials provided with the distribution.
[22] Fix | Delete
[23] Fix | Delete
* Neither the name of the University of Cambridge nor the names of its
[24] Fix | Delete
contributors may be used to endorse or promote products derived from
[25] Fix | Delete
this software without specific prior written permission.
[26] Fix | Delete
[27] Fix | Delete
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
[28] Fix | Delete
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
[29] Fix | Delete
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
[30] Fix | Delete
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
[31] Fix | Delete
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
[32] Fix | Delete
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
[33] Fix | Delete
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
[34] Fix | Delete
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
[35] Fix | Delete
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
[36] Fix | Delete
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
[37] Fix | Delete
POSSIBILITY OF SUCH DAMAGE.
[38] Fix | Delete
-----------------------------------------------------------------------------
[39] Fix | Delete
*/
[40] Fix | Delete
[41] Fix | Delete
/* Have to include stdlib.h in order to ensure that size_t is defined. */
[42] Fix | Delete
[43] Fix | Delete
#include <stdlib.h>
[44] Fix | Delete
[45] Fix | Delete
/* Allow for C++ users */
[46] Fix | Delete
[47] Fix | Delete
#ifdef __cplusplus
[48] Fix | Delete
extern "C" {
[49] Fix | Delete
#endif
[50] Fix | Delete
[51] Fix | Delete
/* Options, mostly defined by POSIX, but with some extras. */
[52] Fix | Delete
[53] Fix | Delete
#define REG_ICASE 0x0001 /* Maps to PCRE_CASELESS */
[54] Fix | Delete
#define REG_NEWLINE 0x0002 /* Maps to PCRE_MULTILINE */
[55] Fix | Delete
#define REG_NOTBOL 0x0004 /* Maps to PCRE_NOTBOL */
[56] Fix | Delete
#define REG_NOTEOL 0x0008 /* Maps to PCRE_NOTEOL */
[57] Fix | Delete
#define REG_DOTALL 0x0010 /* NOT defined by POSIX; maps to PCRE_DOTALL */
[58] Fix | Delete
#define REG_NOSUB 0x0020 /* Maps to PCRE_NO_AUTO_CAPTURE */
[59] Fix | Delete
#define REG_UTF8 0x0040 /* NOT defined by POSIX; maps to PCRE_UTF8 */
[60] Fix | Delete
#define REG_STARTEND 0x0080 /* BSD feature: pass subject string by so,eo */
[61] Fix | Delete
#define REG_NOTEMPTY 0x0100 /* NOT defined by POSIX; maps to PCRE_NOTEMPTY */
[62] Fix | Delete
#define REG_UNGREEDY 0x0200 /* NOT defined by POSIX; maps to PCRE_UNGREEDY */
[63] Fix | Delete
#define REG_UCP 0x0400 /* NOT defined by POSIX; maps to PCRE_UCP */
[64] Fix | Delete
[65] Fix | Delete
/* This is not used by PCRE, but by defining it we make it easier
[66] Fix | Delete
to slot PCRE into existing programs that make POSIX calls. */
[67] Fix | Delete
[68] Fix | Delete
#define REG_EXTENDED 0
[69] Fix | Delete
[70] Fix | Delete
/* Error values. Not all these are relevant or used by the wrapper. */
[71] Fix | Delete
[72] Fix | Delete
enum {
[73] Fix | Delete
REG_ASSERT = 1, /* internal error ? */
[74] Fix | Delete
REG_BADBR, /* invalid repeat counts in {} */
[75] Fix | Delete
REG_BADPAT, /* pattern error */
[76] Fix | Delete
REG_BADRPT, /* ? * + invalid */
[77] Fix | Delete
REG_EBRACE, /* unbalanced {} */
[78] Fix | Delete
REG_EBRACK, /* unbalanced [] */
[79] Fix | Delete
REG_ECOLLATE, /* collation error - not relevant */
[80] Fix | Delete
REG_ECTYPE, /* bad class */
[81] Fix | Delete
REG_EESCAPE, /* bad escape sequence */
[82] Fix | Delete
REG_EMPTY, /* empty expression */
[83] Fix | Delete
REG_EPAREN, /* unbalanced () */
[84] Fix | Delete
REG_ERANGE, /* bad range inside [] */
[85] Fix | Delete
REG_ESIZE, /* expression too big */
[86] Fix | Delete
REG_ESPACE, /* failed to get memory */
[87] Fix | Delete
REG_ESUBREG, /* bad back reference */
[88] Fix | Delete
REG_INVARG, /* bad argument */
[89] Fix | Delete
REG_NOMATCH /* match failed */
[90] Fix | Delete
};
[91] Fix | Delete
[92] Fix | Delete
[93] Fix | Delete
/* The structure representing a compiled regular expression. */
[94] Fix | Delete
[95] Fix | Delete
typedef struct {
[96] Fix | Delete
void *re_pcre;
[97] Fix | Delete
size_t re_nsub;
[98] Fix | Delete
size_t re_erroffset;
[99] Fix | Delete
} regex_t;
[100] Fix | Delete
[101] Fix | Delete
/* The structure in which a captured offset is returned. */
[102] Fix | Delete
[103] Fix | Delete
typedef int regoff_t;
[104] Fix | Delete
[105] Fix | Delete
typedef struct {
[106] Fix | Delete
regoff_t rm_so;
[107] Fix | Delete
regoff_t rm_eo;
[108] Fix | Delete
} regmatch_t;
[109] Fix | Delete
[110] Fix | Delete
/* When an application links to a PCRE DLL in Windows, the symbols that are
[111] Fix | Delete
imported have to be identified as such. When building PCRE, the appropriate
[112] Fix | Delete
export settings are needed, and are set in pcreposix.c before including this
[113] Fix | Delete
file. */
[114] Fix | Delete
[115] Fix | Delete
#if defined(_WIN32) && !defined(PCRE_STATIC) && !defined(PCREPOSIX_EXP_DECL)
[116] Fix | Delete
# define PCREPOSIX_EXP_DECL extern __declspec(dllimport)
[117] Fix | Delete
# define PCREPOSIX_EXP_DEFN __declspec(dllimport)
[118] Fix | Delete
#endif
[119] Fix | Delete
[120] Fix | Delete
/* By default, we use the standard "extern" declarations. */
[121] Fix | Delete
[122] Fix | Delete
#ifndef PCREPOSIX_EXP_DECL
[123] Fix | Delete
# ifdef __cplusplus
[124] Fix | Delete
# define PCREPOSIX_EXP_DECL extern "C"
[125] Fix | Delete
# define PCREPOSIX_EXP_DEFN extern "C"
[126] Fix | Delete
# else
[127] Fix | Delete
# define PCREPOSIX_EXP_DECL extern
[128] Fix | Delete
# define PCREPOSIX_EXP_DEFN extern
[129] Fix | Delete
# endif
[130] Fix | Delete
#endif
[131] Fix | Delete
[132] Fix | Delete
/* The functions */
[133] Fix | Delete
[134] Fix | Delete
PCREPOSIX_EXP_DECL int regcomp(regex_t *, const char *, int);
[135] Fix | Delete
PCREPOSIX_EXP_DECL int regexec(const regex_t *, const char *, size_t,
[136] Fix | Delete
regmatch_t *, int);
[137] Fix | Delete
PCREPOSIX_EXP_DECL size_t regerror(int, const regex_t *, char *, size_t);
[138] Fix | Delete
PCREPOSIX_EXP_DECL void regfree(regex_t *);
[139] Fix | Delete
[140] Fix | Delete
#ifdef __cplusplus
[141] Fix | Delete
} /* extern "C" */
[142] Fix | Delete
#endif
[143] Fix | Delete
[144] Fix | Delete
#endif /* End of pcreposix.h */
[145] Fix | Delete
[146] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function