Staging
v0.5.1
https://github.com/python/cpython
Revision a0c5e54dba196ba70f431e31984b03ca26753393 authored by Jack Jansen on 25 March 2002, 10:38:57 UTC, committed by Jack Jansen on 25 March 2002, 10:38:57 UTC
Weaklink most toolbox modules, improving backward compatibility. Modules will no longer fail to load if a single routine is missing on the curent OS version, in stead calling the missing routine will raise an exception.

Should finally fix 531398. 2.2.1 candidate.

Also blacklisted some constants with definitions that were not Python-compatible.
1 parent ec15808
Raw File
Tip revision: a0c5e54dba196ba70f431e31984b03ca26753393 authored by Jack Jansen on 25 March 2002, 10:38:57 UTC
Backport of _Qtmocule.c 1.7, qtsupport.py 1.19:
Tip revision: a0c5e54
pcre.h
/*************************************************
*       Perl-Compatible Regular Expressions      *
*************************************************/

/* Copyright (c) 1998 University of Cambridge */

#ifndef _PCRE_H
#define _PCRE_H

#ifdef FOR_PYTHON
#include "Python.h"
#endif

/* Have to include stdlib.h in order to ensure that size_t is defined;
it is needed here for malloc. */

#ifndef DONT_HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
#include <stdlib.h>

/* Allow for C++ users */

#ifdef __cplusplus
extern "C" {
#endif

/* Options */

#define PCRE_CASELESS        0x0001
#define PCRE_EXTENDED        0x0002
#define PCRE_ANCHORED        0x0004
#define PCRE_MULTILINE       0x0008
#define PCRE_DOTALL          0x0010
#define PCRE_DOLLAR_ENDONLY  0x0020
#define PCRE_EXTRA           0x0040
#define PCRE_NOTBOL          0x0080
#define PCRE_NOTEOL          0x0100
#define PCRE_UNGREEDY        0x0400
#ifdef FOR_PYTHON
#define PCRE_LOCALE          0x0200
#endif

/* Exec-time error codes */

#define PCRE_ERROR_NOMATCH        (-1)
#define PCRE_ERROR_BADREF         (-2)
#define PCRE_ERROR_NULL           (-3)
#define PCRE_ERROR_BADOPTION      (-4)
#define PCRE_ERROR_BADMAGIC       (-5)
#define PCRE_ERROR_UNKNOWN_NODE   (-6)
#define PCRE_ERROR_NOMEMORY       (-7)

/* Types */

typedef void pcre;
typedef void pcre_extra;

/* Store get and free functions. These can be set to alternative malloc/free
functions if required. */

extern void *(*pcre_malloc)(size_t);
extern void  (*pcre_free)(void *);

/* Functions */

#ifdef FOR_PYTHON
extern pcre *pcre_compile(const char *, int, const char **, int *, PyObject *);
extern int pcre_exec(const pcre *, const pcre_extra *, const char *,
  int, int, int, int *, int);
#else
extern pcre *pcre_compile(const char *, int, const char **, int *);
extern int pcre_exec(const pcre *, const pcre_extra *, const char *,
  int, int, int *, int);
#endif
extern int pcre_info(const pcre *, int *, int *);
extern pcre_extra *pcre_study(const pcre *, int, const char **);
extern const char *pcre_version(void);

#ifdef __cplusplus
}  /* extern "C" */
#endif

#endif /* End of pcre.h */
back to top