/[pcre]/code/trunk/pcre.h
ViewVC logotype

Contents of /code/trunk/pcre.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 37 - (show annotations) (download)
Sat Feb 24 21:39:09 2007 UTC (7 years, 8 months ago) by nigel
File MIME type: text/plain
File size: 2141 byte(s)
Load pcre-2.07 into code/trunk.

1 /*************************************************
2 * Perl-Compatible Regular Expressions *
3 *************************************************/
4
5 /* Copyright (c) 1997-1999 University of Cambridge */
6
7 #ifndef _PCRE_H
8 #define _PCRE_H
9
10 /* Have to include stdlib.h in order to ensure that size_t is defined;
11 it is needed here for malloc. */
12
13 #include <sys/types.h>
14 #include <stdlib.h>
15
16 /* Allow for C++ users */
17
18 #ifdef __cplusplus
19 extern "C" {
20 #endif
21
22 /* Options */
23
24 #define PCRE_CASELESS 0x0001
25 #define PCRE_MULTILINE 0x0002
26 #define PCRE_DOTALL 0x0004
27 #define PCRE_EXTENDED 0x0008
28 #define PCRE_ANCHORED 0x0010
29 #define PCRE_DOLLAR_ENDONLY 0x0020
30 #define PCRE_EXTRA 0x0040
31 #define PCRE_NOTBOL 0x0080
32 #define PCRE_NOTEOL 0x0100
33 #define PCRE_UNGREEDY 0x0200
34 #define PCRE_NOTEMPTY 0x0400
35
36 /* Exec-time and get-time error codes */
37
38 #define PCRE_ERROR_NOMATCH (-1)
39 #define PCRE_ERROR_NULL (-2)
40 #define PCRE_ERROR_BADOPTION (-3)
41 #define PCRE_ERROR_BADMAGIC (-4)
42 #define PCRE_ERROR_UNKNOWN_NODE (-5)
43 #define PCRE_ERROR_NOMEMORY (-6)
44 #define PCRE_ERROR_NOSUBSTRING (-7)
45
46 /* Types */
47
48 typedef void pcre;
49 typedef void pcre_extra;
50
51 /* Store get and free functions. These can be set to alternative malloc/free
52 functions if required. */
53
54 extern void *(*pcre_malloc)(size_t);
55 extern void (*pcre_free)(void *);
56
57 /* Functions */
58
59 extern pcre *pcre_compile(const char *, int, const char **, int *,
60 const unsigned char *);
61 extern int pcre_copy_substring(const char *, int *, int, int, char *, int);
62 extern int pcre_exec(const pcre *, const pcre_extra *, const char *,
63 int, int, int, int *, int);
64 extern int pcre_get_substring(const char *, int *, int, int, const char **);
65 extern int pcre_get_substring_list(const char *, int *, int, const char ***);
66 extern int pcre_info(const pcre *, int *, int *);
67 extern unsigned const char *pcre_maketables(void);
68 extern pcre_extra *pcre_study(const pcre *, int, const char **);
69 extern const char *pcre_version(void);
70
71 #ifdef __cplusplus
72 } /* extern "C" */
73 #endif
74
75 #endif /* End of pcre.h */

webmaster@exim.org
ViewVC Help
Powered by ViewVC 1.1.12