/[pcre]/code/tags/pcre-3.3/pcre.in
ViewVC logotype

Contents of /code/tags/pcre-3.3/pcre.in

Parent Directory Parent Directory | Revision Log Revision Log


Revision 49 - (hide annotations) (download)
Sat Feb 24 21:39:33 2007 UTC (7 years, 8 months ago) by nigel
Original Path: code/trunk/pcre.in
File size: 3146 byte(s)
Load pcre-3.3 into code/trunk.

1 nigel 43 /*************************************************
2     * Perl-Compatible Regular Expressions *
3     *************************************************/
4    
5     /* Copyright (c) 1997-2000 University of Cambridge */
6    
7     #ifndef _PCRE_H
8     #define _PCRE_H
9    
10 nigel 47 /* The file pcre.h is build by "configure". Do not edit it; instead
11     make changes to pcre.in. */
12    
13 nigel 43 #define PCRE_MAJOR @PCRE_MAJOR@
14     #define PCRE_MINOR @PCRE_MINOR@
15     #define PCRE_DATE @PCRE_DATE@
16    
17     /* Win32 uses DLL by default */
18    
19     #ifdef _WIN32
20     # ifdef STATIC
21     # define PCRE_DL_IMPORT
22     # else
23     # define PCRE_DL_IMPORT __declspec(dllimport)
24     # endif
25     #else
26     # define PCRE_DL_IMPORT
27     #endif
28    
29     /* Have to include stdlib.h in order to ensure that size_t is defined;
30     it is needed here for malloc. */
31    
32     #include <stdlib.h>
33    
34     /* Allow for C++ users */
35    
36     #ifdef __cplusplus
37     extern "C" {
38     #endif
39    
40     /* Options */
41    
42     #define PCRE_CASELESS 0x0001
43     #define PCRE_MULTILINE 0x0002
44     #define PCRE_DOTALL 0x0004
45     #define PCRE_EXTENDED 0x0008
46     #define PCRE_ANCHORED 0x0010
47     #define PCRE_DOLLAR_ENDONLY 0x0020
48     #define PCRE_EXTRA 0x0040
49     #define PCRE_NOTBOL 0x0080
50     #define PCRE_NOTEOL 0x0100
51     #define PCRE_UNGREEDY 0x0200
52     #define PCRE_NOTEMPTY 0x0400
53 nigel 49 #define PCRE_UTF8 0x0800
54 nigel 43
55     /* Exec-time and get-time error codes */
56    
57     #define PCRE_ERROR_NOMATCH (-1)
58     #define PCRE_ERROR_NULL (-2)
59     #define PCRE_ERROR_BADOPTION (-3)
60     #define PCRE_ERROR_BADMAGIC (-4)
61     #define PCRE_ERROR_UNKNOWN_NODE (-5)
62     #define PCRE_ERROR_NOMEMORY (-6)
63     #define PCRE_ERROR_NOSUBSTRING (-7)
64    
65     /* Request types for pcre_fullinfo() */
66    
67     #define PCRE_INFO_OPTIONS 0
68     #define PCRE_INFO_SIZE 1
69     #define PCRE_INFO_CAPTURECOUNT 2
70     #define PCRE_INFO_BACKREFMAX 3
71     #define PCRE_INFO_FIRSTCHAR 4
72     #define PCRE_INFO_FIRSTTABLE 5
73     #define PCRE_INFO_LASTLITERAL 6
74    
75     /* Types */
76    
77     typedef void pcre;
78     typedef void pcre_extra;
79    
80     /* Store get and free functions. These can be set to alternative malloc/free
81     functions if required. Some magic is required for Win32 DLL; it is null on
82     other OS. */
83    
84     PCRE_DL_IMPORT extern void *(*pcre_malloc)(size_t);
85     PCRE_DL_IMPORT extern void (*pcre_free)(void *);
86    
87     #undef PCRE_DL_IMPORT
88    
89     /* Functions */
90    
91     extern pcre *pcre_compile(const char *, int, const char **, int *,
92 nigel 49 const unsigned char *);
93     extern int pcre_copy_substring(const char *, int *, int, int, char *, int);
94     extern int pcre_exec(const pcre *, const pcre_extra *, const char *,
95     int, int, int, int *, int);
96     extern void pcre_free_substring(const char *);
97     extern void pcre_free_substring_list(const char **);
98     extern int pcre_get_substring(const char *, int *, int, int, const char **);
99     extern int pcre_get_substring_list(const char *, int *, int, const char ***);
100     extern int pcre_info(const pcre *, int *, int *);
101     extern int pcre_fullinfo(const pcre *, const pcre_extra *, int, void *);
102 nigel 43 extern unsigned const char *pcre_maketables(void);
103     extern pcre_extra *pcre_study(const pcre *, int, const char **);
104     extern const char *pcre_version(void);
105    
106     #ifdef __cplusplus
107     } /* extern "C" */
108     #endif
109    
110     #endif /* End of pcre.h */

webmaster@exim.org
ViewVC Help
Powered by ViewVC 1.1.12