/[pcre]/code/tags/pcre-2.03/pcre.h
ViewVC logotype

Contents of /code/tags/pcre-2.03/pcre.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 30 - (show annotations) (download)
Sat Feb 24 21:38:55 2007 UTC (7 years, 8 months ago) by nigel
File MIME type: text/plain
File size: 2100 byte(s)
Tag code/trunk as code/tags/pcre-2.03.

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
35 /* Exec-time and get-time error codes */
36
37 #define PCRE_ERROR_NOMATCH (-1)
38 #define PCRE_ERROR_NULL (-2)
39 #define PCRE_ERROR_BADOPTION (-3)
40 #define PCRE_ERROR_BADMAGIC (-4)
41 #define PCRE_ERROR_UNKNOWN_NODE (-5)
42 #define PCRE_ERROR_NOMEMORY (-6)
43 #define PCRE_ERROR_NOSUBSTRING (-7)
44
45 /* Types */
46
47 typedef void pcre;
48 typedef void pcre_extra;
49
50 /* Store get and free functions. These can be set to alternative malloc/free
51 functions if required. */
52
53 extern void *(*pcre_malloc)(size_t);
54 extern void (*pcre_free)(void *);
55
56 /* Functions */
57
58 extern pcre *pcre_compile(const char *, int, const char **, int *,
59 const unsigned char *);
60 extern int pcre_copy_substring(const char *, int *, int, int, char *, int);
61 extern int pcre_exec(const pcre *, const pcre_extra *, const char *,
62 int, int, int *, int);
63 extern int pcre_get_substring(const char *, int *, int, int, const char **);
64 extern int pcre_get_substring_list(const char *, int *, int, const char ***);
65 extern int pcre_info(const pcre *, int *, int *);
66 extern unsigned const char *pcre_maketables(void);
67 extern pcre_extra *pcre_study(const pcre *, int, const char **);
68 extern const char *pcre_version(void);
69
70 #ifdef __cplusplus
71 } /* extern "C" */
72 #endif
73
74 #endif /* End of pcre.h */

webmaster@exim.org
ViewVC Help
Powered by ViewVC 1.1.12